how can i color the particular block of the image?
1 次查看(过去 30 天)
显示 更早的评论
m working on gray scale images.. i've extracted a particular block from the code for the above is :
blockNumber = 1;
blockrows =2; blockcols = 2;
[blockcol, blockrow] = ind2sub( [blockcols, blockrows], blockNumber);
colstart = (blockcol-1) * blockSizeC + 1;
rowstart = (blockrow - 1) * blockSizeR + 1;
oneBlock1 = grayImage(rowstart : rowstart + blockSizeR - 1, colstart : colstart + blockSizeC - 1);
imshow(oneBlock);
i want to color the above block..how can i do so????
grayImage(rowstart : rowstart + blockSizeR - 1, colstart : colstart + blockSizeC - 1)=0;
the above code color the block with black but it distorts the intensity values.
plz help me to do so..
0 个评论
采纳的回答
Iman Ansari
2013-5-5
Hi.
clear
grayImage=imread('cameraman.tif');
blockNumber = 34;
blockSizeC=32;
blockSizeR=32;
blockrows =8; blockcols = 8;
[blockrow, blockcol] = ind2sub( [blockcols, blockrows], blockNumber);
colstart = (blockcol-1) * blockSizeC + 1;
rowstart = (blockrow - 1) * blockSizeR + 1;
oneBlock = grayImage(rowstart : rowstart + blockSizeR - 1, colstart : colstart + blockSizeC - 1);
New=cat(3,grayImage,grayImage,grayImage);
New(rowstart : rowstart + blockSizeR - 1, colstart : colstart + blockSizeC - 1,[1 3])=0;
imshow(New);
4 个评论
Iman Ansari
2013-5-6
I changed it to color Image with:
R=grayImage;
G=grayImage;
B=grayImage;
because R,G and B value are the same, so your output image looks gray level image. R and B components in your became 0, your block seems green. Your grayImage didn't change and in color image (New) the green component is the same as grayImage:
New(:,:,2)==grayImage
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Iterator Subsystems 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!