How to generate a bitmap image without using function...Please help
显示 更早的评论
How can i generate bitmap representation of an image using thresholding?? below code didn't work....
for i=1:r
for j=1:s
thresh=C(i,j)+Di;
if(imean(i,j)>=thresh)
bm(i,j)=1;
else
bm(i,j)=0;
end
end
end
figure
imshow(bm);
8 个评论
Sreeda M A
2016-6-29
编辑:Geoff Hayes
2016-6-29
Geoff Hayes
2016-6-29
Sreeda - how are r and s initialized? You are trying to iterate over C which is a 1x256 matrix yet r is at least two. Please clarify where these values have come from and how they relate to C.
Sreeda M A
2016-7-4
Stephen23
2016-7-4
@Sreeda M A: Don't waste your time writing loops. MATLAB is a high-level language, so you don't need to mess around with ugly loops. See Walter Roberson's answer for the simplest and fastest solution.
Walter Roberson
2016-7-4
If r and s are the size of your image, then your image is stored in some variable other than C.
Sreeda M A
2016-7-4
编辑:Image Analyst
2016-7-4
Image Analyst
2016-7-4
编辑:Image Analyst
2016-7-4
Also to do a locally adaptive threshold like you did, you can do it vectorized if you just create an m1 (or n1) image with conv2() or imfilter(), then use >=. Let me know if you can't figure it out.
bm =
Sreeda M A
2016-8-10
回答(1 个)
Walter Roberson
2016-6-29
thresh = C + Di;
bm = imean >= thresh;
No loop required.
类别
在 帮助中心 和 File Exchange 中查找有关 Images 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!