Respected Members! My task is to convert RGB image to Blue ratio image.
This is the formula of conversion:
and code is
% RGB to Blue Ratio Conversion %--------------------------------------
R= img(:,:,1);
G=img(:,:,2);
B=img(:,:,3);
BR=((100 * B)./(1+R+G)) .* (256./(1+B+R+G)); % formula for conversion
imshow(BR);
The expected output can be seen in this image after running the code.
But when I apply the code...the output is a black image -- there is no sign of anything in image. Here is the input image:
Kindly help. How I can fix this issue so that I can see the contents of image?

 採用された回答

Dishant Arora
Dishant Arora 2014 年 4 月 6 日

0 投票

use:
imshow(BR , [])
Or
imagesc(BR)

3 件のコメント

Tahir
Tahir 2014 年 4 月 6 日
編集済み: Tahir 2014 年 4 月 6 日
Thanks sir its working.
Tahir
Tahir 2014 年 4 月 6 日
編集済み: Image Analyst 2014 年 4 月 6 日
I have to use this image for further processing ...what can i do next..the output is 100% correct...but for further processing what i do.
imshow(BR , []);
i have to apply filter on this image.reply plz
[EDIT]
The issue is solved after obeying the instruction from him..Good job sir.
Dishant Arora
Dishant Arora 2014 年 4 月 7 日
Use your image as it is for further processing or cast it to double using im2double as Image Analyst said.

サインインしてコメントする。

その他の回答 (1 件)

Image Analyst
Image Analyst 2014 年 4 月 6 日

2 投票

You need to cast to double because (B+R+G) will get clipped at 255 if you dont and just leave them as uint8!!! Then display with [] option in imshow like Dishant showed you.

カテゴリ

ヘルプ センター および File Exchange で Convert Image Type についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by