2010-06-08 3 views
4

ColorMatrix을 사용해보고 싶지만 그레이 스케일로 이미지를 변환하는 예제 만 찾을 수 있습니다. 그리고 그때조차 그들은 설명이없는 '마법의 숫자'코드의 덩어리로 제시되는 경향이 있습니다.ColorMatrix에 대한 설명 자료가 있습니까?

ColorMatrix를 사용하는 방법에 대한 '튜토리얼'을 아는 ​​사람이 있습니까? 예를 들어 회색 음영 이미지를 컬러 이미지로 변환하는 데 관심이 있습니다 (흰색 == 투명, 검정 = 단색, 중간에 회색 픽셀 있음). ColorMatrix가 그렇게 할 수 있습니까?

+0

당신은 의미하지 않는다 설정할 수있는 그레이 스케일임을 알고있는 경우

컬러 이미지로 변환되지만 알파 마스크로 변환됩니다. – ChrisF

+0

단색 [흰색 → 검정] 이미지를 단색 [투명 -> % 색 %] 이미지로 변환한다고 가정합니다. 그래서 그것을 보는 또 다른 방법은 입력 이미지를 단색으로 적용되는 알파 마스크로 보는 것입니다. 그러나 출력은 알파 마스크가 아닙니다. – mackenir

답변

2

설명서에 대해서는 모르겠지만 ColorMatrix은 하나의 RGBAW 값을 다른 RGBAW 값으로 변환하므로 입력 RGB 값을 가져 와서 출력 알파 값에 적용하도록 매트릭스를 설정할 수 있습니다. (W는 행렬 연산을 수행하기 위해서만 존재합니다).

OK, 난 당신이 원하는 것을 다음의 행렬이해야 할 생각 :

[1.0 0.0 0.0 0.333 0.0] 
[0.0 1.0 0.0 0.333 0.0] 
[0.0 0.0 1.0 0.333 0.0] 
[0.0 0.0 0.0 0.0 0.0] 
[0.0 0.0 0.0 0.0 1.0] 

이이 변경되지 않은 현재의 RGB 값을 그대로두고 다음 R/3 + G/3 + B로 알파를 설정합니다/3, 즉 RGB 값의 평균. 대각선을 따라 1.0 값을 0.0으로 변경하여 RGB 값을 모두 제거합니다. 당신은 이미지가 R은 == G == B는 다음 1.0 (반복)를 0.333 중 하나를 교체하고 다른 두 개의 0.0

+0

감사! 나는 그것을 시도 할 것이다. 일반적으로 행렬 곱셈을 살펴 봐야한다고 가정합니다. – mackenir

+0

@mackenir - 분노한 이래로 시간이 지났으니, 내가 시작한 것들을 시작점으로 대했습니다! – ChrisF

관련 문제