필터 지우기
필터 지우기

Convert Color to Bone colormap

조회 수: 3 (최근 30일)
Joe Tomaino
Joe Tomaino 2011년 7월 11일
I would like to load a .jpg picture and convert it to grayscale using the bone colormap. Is this possible? I need to have blue/dark blue approach white and red/dark red approach black, or vice versa.
Thanks,
Joe

채택된 답변

Walter Roberson
Walter Roberson 2011년 7월 11일
If your image was originally an indexed image that was displayed (and saved) with the "bone" map, then you can reverse the color mapping and get back to the indexed image using:
indexedImage = rgb2ind(YourRGBImage, bone);
Once you have done that conversion, you can convert to an arbitrary new color map and convert that result to grayscale, by using
grayImage = ind2gray(indexedImage, NewMap);
For example, your NewMap could effectively be a gamma adjustment.
If you were custom-creating the new map and if it was just as easy to do it in gray in the first place, then you could make it a simple vector of gray levels, and use
grayImage = NewGMap(1+indexedImage);
  댓글 수: 2
Joe Tomaino
Joe Tomaino 2011년 7월 13일
Thanks Walter, I'm pretty sure that's the right thing to do, but the final image looks terrible. (I had to take a screen shot of the image, so I don't think Matlab is happy with it). I really appreciate your answer, thanks again!
Walter Roberson
Walter Roberson 2011년 7월 13일
Perhaps instead of a screen shot, you could use print() with a resolution, or use Oliver's contribution export_fig, http://www.mathworks.com/matlabcentral/fileexchange/23629

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

추가 답변 (1개)

Rick Rosson
Rick Rosson 2011년 7월 11일
Please try:
doc rgb2gray
HTH.
  댓글 수: 1
Walter Roberson
Walter Roberson 2011년 7월 11일
That is suitable for RGB images, but not for using a particular color map.

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

카테고리

Help CenterFile Exchange에서 Blue에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by