نمايش پست تنها
قديمي ۰۴-۲۹-۱۳۹۲, ۱۲:۰۷ قبل از ظهر   #3 (لینک دائم)
N-5 Female
عضو جدید
 
آواتار N-5
 
تاريخ عضويت: فروردين ۱۳۹۲
پست ها: 5
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

تصویری که سه بار نمایش داده می شود تصویری است که توسط دستور imread از ورودی خوانده ام و با دستور
كد:
cvtColor( src, src_gray, CV_BGR2GRAY );
به تصویر خاکستری تبدیل کردم. اگر با دستور imshow آن را نمایش بدهم مشکلی وجود ندارد و تصویر سطح خاکستری به درستی نمایش داده می شود ولی وقتی در pictureBox نشان داده می شود مشکلاتی که گفتم پیش می آید.
احتمالاً علت سه بار نمایش دادن آن هم این است که هر سه لایه r، g و b را کنار هم نمایش می دهد و چون تبدیل به سطح خاکستری شده هر سه سیاه و سفید هستند ولی مشکل این است که نمی دانم چطور باید فقط یکی را نمایش بدهم.
ضمناً اگر از Format24bppRgb استفاده کنم سه تصویر خاکستری کنار هم می دهد، اگر از Format16bppGrayScale استفاده کنم خطا می دهد و اگر از Format8bppIndexed استفاده کنم یک تصویر با رنگ های نادرست نشان می دهد. متاسفانه نتوانستم خروجی را اینجا قرار دهم تا نتیجه را ببینید.
متشکرم
N-5 آفلاين است   پاسخ با نقل قول