2016-10-07 6 views

답변

2

대상 평면과 관련하여 이미지를 왜곡 할 때이 새 평면의 많은 픽셀은 0과 같습니다. 매우 기초적인 알고리즘은 이미지를 임계 값으로 설정하여 0보다 큰 값을 찾으면 찾을 수 있습니다 0이 아닌 픽셀을 포함하는 가장 큰 테두리 상자 ... 다음 자르기 :

[rows,cols] = find(Ir(:,:,1) > 0); 
topLeftRow = min(rows); 
topLeftCol = min(cols); 
bottomRightRow = max(rows); 
bottomRightCol = max(cols); 

Ir_crop = Ir(topLeftRow:bottomRightRow, topLeftCol:bottomRightCol, :); 
+0

인덱스가 매트릭스 크기를 초과합니다. SURF_with_MATALB 오류 (줄 55) Ir_crop = Ir (topLeftRow : bottomRightRow, topLeftCol : bottomRightCol, :); 크기 (IR) = 898 1354 3 topLeftRow = 1 bottomRightRow = 476 topLeftCol = 250 bottomRightCol = 3706 ('[행 COLS = 찾을의 Ir을 (첫 번째 행을 변경 –

+0

: : 1)> 0); 그리고 그것은 작동해야합니다. – erfan

+0

우리가 똑같은 말을하고 있는지 확실하지 않지만, 대학에서 모자이크 소프트웨어를 만들 때 역 투영을 사용하면 쉽게 투영을 할 수 있다는 것을 기억합니다. 대상 평면을 원본 이미지로 투영합니다. 이렇게하면 대상의 각 픽셀이 소스의 픽셀에 할당되어 0의 문제를 피할 수 있습니다. –