[問題] OpenCV RGB的值

看板C_and_CPP (C/C++)作者 (screct)時間15年前 (2011/05/28 11:15), 編輯推噓0(003)
留言3則, 3人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) OpenCV 錯誤結果(Wrong Output): 小弟用OpenCV讀出mp4影片的frame之後 並將每張frame 的RGB value 取出 但是為什麼我的RGB value 有一大半是負的 想請問各位 OpenCV 讀出的RGB value 該怎樣才能轉成 一般RGB unsign int 8 的格式 Code 如下(只讀一張frame) int i; FILE *r = fopen("R.txt","w"); FILE *g = fopen("G.txt","w"); FILE *b = fopen("B.txt","w"); //-------OPEN File----------------------------------------- CvCapture *cap = cvCreateFileCapture("akiyo_qcif.mp4"); if(!cap) // check if we succeeded { printf("Open file error\n"); } IplImage* img = 0; img = cvQueryFrame( cap ); int pixels = img->height * img->width; int channels = img->nChannels; for(int i=0;i<pixels*channels;i=i+channels) { char red = img->imageData[i + 2]; char green = img->imageData[i + 1]; char blue = img->imageData[i]; fprintf(r,"%d\t",(int) red); fprintf(g,"%d\t",(int) green); fprintf(b,"%d\t",(int) blue); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.39.156.28 ※ 編輯: cff0000ff 來自: 114.39.156.28 (05/28 12:02)

05/28 12:08, , 1F
unsigned char?
05/28 12:08, 1F

05/28 12:48, , 2F
用uchar去讀就對了耶 感謝樓上
05/28 12:48, 2F

05/29 11:50, , 3F
OPENCV 好像是存-128~127 不是~0~255
05/29 11:50, 3F
文章代碼(AID): #1Du6ZOrt (C_and_CPP)
文章代碼(AID): #1Du6ZOrt (C_and_CPP)