Confused about the RGB colour coding
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello, I wonder if the Matlab RGB color index is just the usual RGB index divided by 255??? The default RGB color list is as follows in Matlab:
For example green is [0 1 0] the default RGB coding in the Colour software like Photoshop is [0 255 0] so do I just divide the color coding in Photoshop RGB format by 255 to arrive at the Matlab RGB color code?
I wonder if there is an inbuilt function like that... Thanks! D
댓글 수: 0
채택된 답변
Jan
2011년 9월 29일
If you store the RGB values as a [X, Y, 3] DOUBLE array, the values are going form 0 to 1. If you use an UINT8 array, the values are in the interval [0, 255], as in many other applications (Photoshop, color-pickers, HTML, etc).
A simple conversion:
RGB_double = rand(200, 100, 3);
RGB_uint8 = uint8(RGB * 255 + 0.5);
The 0.5 cares for the same weights of the UINT8(0) and UINT8(255) bins.
댓글 수: 3
Image Analyst
2011년 9월 29일
Yes. Dividing by 255 is fine. Or by intmax('uint16') if you're using 16 bit numbers.
Walter Roberson
2011년 9월 29일
im2double() does the type-checking and divides by the appropriate scaling factor.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!