2014-12-05 2 views
0

두 이미지를 알파 블렌딩 할 때 OpenCV에 알파 채널이 있습니다.두 개의 투명 이미지가있는 알파 블렌딩

double r, g, b, a; //source image colors 
double Rd, Gd, Bd, Ad; //destination image colors 

.... 

double result_r = r∗a + Rd*(1−a); 
double result_g = g∗a + Gd*(1−a); 
double result_b = b∗a + Bd*(1−a); 
double result_a = a∗a + Ad*(1−a); 

대상 이미지가 불투명 한 경우 제대로 작동합니다. 하지만 원본과 대상 모두에서 투명한 이미지가 필요합니다. OpenCV의 다른 계산 방법이나 기능이 있습니까? cvFunction addWeighted()에서

감사

답변

2

봐. 필요한 것을 수행합니다. 여기에 link

+0

답장을 보내 주셔서 감사합니다! 'addWeighted()'함수는 모든 픽셀에 대해 동일한 알파 값을 취하는 것으로 보입니다. src1과 src2가 소유 한 다른 알파 값을 각 픽셀에 적용 할 수 있습니까? –

+0

아니요, addWeighted()에서는 사용할 수 없습니다. mat 요소를 초기화하고 multiply()를 사용할 수 있습니다. 그러나 이전 질문에 대한 이전 답변이 있으면 답변으로 표시하십시오. – rafaoc