how can i change th color of pixels in an image

조회 수: 1 (최근 30일)
paramveer sran
paramveer sran 2016년 8월 1일
편집: Guillaume 2016년 8월 1일
this is an image. i want to change the color of every pixel to white(except background).how can i do?i googled it what could not do this.

답변 (2개)

Walter Roberson
Walter Roberson 2016년 8월 1일
new_image = double(input_grayscale_image > 0);
  댓글 수: 1
paramveer sran
paramveer sran 2016년 8월 1일
i have tried this.it gives this output (attched image)

댓글을 달려면 로그인하십시오.


Guillaume
Guillaume 2016년 8월 1일
편집: Guillaume 2016년 8월 1일
Note: never use the jpg format for image processing and for images with uniform colours such as yours. JPG is a lossy (normally) compression format that does not cope well with uniform areas. You can see that your original image has lots of compression artifacts. I recommend you use PNG as a format.
The black in your image is not truly black. It's mostly 1 instead of 0, but because of the compression artifacts near the transition to the grey, it sometimes goes higher. You just need to find the right threshold
You can either do the thresholding explicitly:
new_image = your_image(:, :, 1) > 20 %replace 20 by whichever threshold you prefer, from 0 to 255
Or use im2bw:
new_image = im2bw(your_image, 0.1) %replace 0.1 by whichever threshold you prefer, from 0 to 1

Community Treasure Hunt

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

Start Hunting!

Translated by