نقل قول:
نوشته اصلي بوسيله N-5
تصویری که سه بار نمایش داده می شود تصویری است که توسط دستور imread از ورودی خوانده ام و با دستور
كد:
cvtColor( src, src_gray, CV_BGR2GRAY );
احتمالاً علت سه بار نمایش دادن آن هم این است که هر سه لایه r، g و b را کنار هم نمایش می دهد و چون تبدیل به سطح خاکستری شده هر سه سیاه و سفید هستند ولی مشکل این است که نمی دانم چطور باید فقط یکی را نمایش بدهم.
متشکرم
|
به نام خدا
قطعه کد زیر را ببینید، ان شاالله مشکلتان را حل کند (پارامتر IPL_DEPTH_8U در حل مشکل شما کلیدی است)
كد:
// C
IplImage *im_rgb = cvLoadImage("image.jpg");
IplImage *im_gray = cvCreateImage(cvGetSize(im_rgb),IPL_DEPTH_8U,1);
cvCvtColor(im_rgb,im_gray,CV_RGB2GRAY);
// C++
Mat im_rgb = imread("image.jpg");
Mat im_gray;
cvtColor(im_rgb,im_gray,CV_RGB2GRAY);