Q&A Home > 고객지원 > 기술지원 > Q&A
안녕하세요. opencv 설치후 소스 코딩에 대하여 질문입니다.
카테고리Embedded System
작성자김현영 아이피221.150.151.210
작성일10-03-02 18:43 조회수2068
파일

예전에 강의를 들었던 학생입니다

opencv를 이용하여 영상처리를 하시더라구요.

그래서 그때 쓰셨던 fedora9에 버젼에서 사용하던 소스를

fedora8 버젼으로 옮겨서 사용하려고 합니다. (제가 사용하는 리눅스입니다)

근데 fedora9에서  make를 하면 에러는 안납니다.

fedora8에서 make를 하면 에러가 나네요..

makefile 수정을 했구요, opencv lib파일의 경로도 잘지정한것 같습니다..

--------------------------------------------------------------------------------------------------
#include <stdio.h>
#include <cv.h>
#include <highgui.h>
#include <cxcore.h>

void RGB2cvIMG(IplImage *img,unsigned short *rgb,int ex,int ey)
{
 int x,y;

 for(y=0; y<ey; y++)
        for(x=0; x<ex; x++){
   (unsigned int)(img->imageData[(y*img->widthStep)+x*3])=(rgb[y*ex+x]&0x1F)<<3;//b
   (unsigned int)(img->imageData[(y*img->widthStep)+x*3+1])=((rgb[y*ex+x]&0x07E0)>>5)<<2;//g
   (unsigned int)(img->imageData[(y*img->widthStep)+x*3+2])=((rgb[y*ex+x]&0xF800)>>11)<<3;//r
  }
}

int main(int argc, char **argv)
{
    IplImage *img = NULL; 
    unsigned short rgb[240*320]; 
    unsigned char Threshold;


    img = cvCreateImage(cvSize(320,240),IPL_DEPTH_8U,3);

    printf("load ok.\n");
    
   RGB2cvIMG(img,rgb,320,240);
   cvReleaseImage(&img);

    return 0;
}
----------------------------------------------------------------------------------------------
소스코드이구요.

에러는 항상

main.c:27: error: invalid lvalue in assignment
main.c:28: error: invalid lvalue in assignment
main.c:29: error: invalid lvalue in assignment


   (unsigned int)(img->imageData[(y*img->widthStep)+x*3])=(rgb[y*ex+x]&0x1F)<<3;//b
   (unsigned int)(img->imageData[(y*img->widthStep)+x*3+1])=((rgb[y*ex+x]&0x07E0)>>5)<<2;//g
   (unsigned int)(img->imageData[(y*img->widthStep)+x*3+2])=((rgb[y*ex+x]&0xF800)>>11)<<3;//r

이부분에서 에러가 납니다.
혹시 저부분의 역할은 무엇인지요?
그리고.. opencv 설치와 관련된 교육자료가 혹시있나요?

 


다음글 [re]SerialForwarder 프로그램이 실행이 되지 않습니다.
이전글 [re]안녕하세요. opencv 설치후 소스 코딩에 대하여 질문입니다.

댓글 등록은 로그인 하신후 이용하실 수 있습니다.