2014-03-13 3 views
0

분석을 위해 이미지의 데이터를 보존하기 위해 3 개의 이미지를 Tiff 이미지로 저장하고 있습니다. 내 프로그램에서는이 세 이미지를 Emgu.CV.Image<Rgb,ushort>으로로드합니다. 이 세 이미지를 함께 추가하고 세 이미지의 평균 인 최종 티파니 이미지를 반환해야합니다. 이 일을하는 가장 좋은 방법은 무엇입니까?Emgu.CV를 사용하여 Tiff 이미지를 평균화하고 평균 Tiff 이미지 생성

답변

0

기본 방법을 사용하여 emgucv에서 이미지의 개별 픽셀 값에 액세스 한 다음 평균을 찾을 수 있습니다. 화상 각각

for (int i = 0; i < img1.Width; i++) 
    { 
     for (int j = 0; j < img1.Height; j++) 
     { 
      img4.Data[i,j,0] = (img1.Data[i,j,0] + img2.Data[i,j,0] +img3.Data[i,j,0])/3; 
      img4.Data[i,j,1] = (img1.Data[i,j,1] + img2.Data[i,j,1]+ img3.Data[i,j,1])/3; 
      img4.Data[i,j,2] = (img1.Data[i,j,2] + img2.Data[i,j,2]+ img3.Data[i,j,2])/3; 
     } 
    } 

참고 층 0,1,2 컬러 이미지 EmguCV 저장 적색, 녹색 및 청색 데이터

은 : 상기 코드는 모든 이미지는 동일한 크기 (높이의 것으로 가정 너비가 큰 경우), 가장 큰 크기의 이미지를 반복해야하고 추가하기 전에 사용할 수없는 이미지 (또는 더 작은 이미지)의 해당 픽셀을 0으로 설정해야합니다.

픽셀 값을 소수점 이하로 사용할 수 없으므로 각 픽셀 값을 정규화하려면 Math.Floor 또는 이와 비슷한 값을 사용해야합니다.

관련 문제