How I can change the more than one pixel values in gray scale image ?
1 次查看(过去 30 天)
显示 更早的评论
% I have gray image X (480x640 double), having values between 0 and 0 to 1, I want to change the values of all pixel to 1 that are closer to 1 and change values of all pixel to 0 that are near to 0.
1 个评论
Image Analyst
2012-10-26
Why did you post a duplicate when you already had this: http://www.mathworks.com/matlabcentral/answers/51939-how-i-can-change-the-certain-pixel-values-in-gray-scale-image?
采纳的回答
Image Analyst
2012-10-26
编辑:Image Analyst
2012-10-26
Copying my answer from your duplicate question at http://www.mathworks.com/matlabcentral/answers/51939-how-i-can-change-the-certain-pixel-values-in-gray-scale-image:
Well, you shouldn't have accepted that answer so quickly if it didn't do what you asked. Here's how to "change the values of certain pixel to 1 that are closer to 1 and want to change values to 0 that are near to 0:
yourImage = yourImage >= 0.5;
3 个评论
Image Analyst
2012-10-26
I'm not sure what you mean.
Here's an example:
yourImage = rand(3)
yourImage = yourImage >= 0.5
and in the command window.
yourImage =
0.964888535199277 0.957166948242946 0.141886338627215
0.157613081677548 0.485375648722841 0.421761282626275
0.970592781760616 0.8002804688888 0.915735525189067
yourImage =
1 1 0
0 0 0
1 1 1
as you can see, it changed values that are closer to 0 into 0, and values that are closer to 1 into 1, just exactly what you asked. By the way, it also works for any range of values, not just values in between 0 and 1. So, given the yourImage above, what values would you want them to be changed into?
更多回答(1 个)
Wayne King
2012-10-26
编辑:Wayne King
2012-10-26
The function round(), rounds to the nearest integer.
X = rand(480,640);
Xnew = round(X);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Modify Image Colors 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!