The value of an image after adapthisteq
1 回表示 (過去 30 日間)
古いコメントを表示
After I contrast enhance an image by using adapthisteq, the pixels of the image will convert to some decimals value? How can I convert back it to pixels?
For example, I adapthisteq(img1). After that I type img1 inside Matlab, it show me some decimal value of img1 instead of the pixels value of img1. Howevver, what I actually want is the pixels value of img1 after adapthisteq, so how can I convert it back?
0 件のコメント
回答 (2 件)
Image Analyst
2013 年 1 月 23 日
I'm not sure what you mean. img1 is an array that is the same thing as before you called adapthisteq(img1). MATLAB is pass by value so there is no way that adapthisteq() changes img1 at all. Also, the output of adapthisteq is the same type as img1. If your img1 was uint8 than adapthisteq() will return a uint8 image - just try the example and prove it to yourself. So you are not describing your situation correctly. Perhaps if you provide your actual code and do a better job of explaining...
1 件のコメント
Image Analyst
2013 年 1 月 23 日
Regarding your "Answer", you can mask an image like this without converting to double:
% Mask the image.
maskedRgbImage = bsxfun(@times, rgbImage, cast(mask,class(rgbImage)));
rgbImage can be a gray scale image also.
参考
カテゴリ
Help Center および File Exchange で Read, Write, and Modify Image についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!