OpenCV で画像にアフィン変換を適用すると、その結果がプレビュー ウィンドウに表示されず、ウィンドウ全体が黒くなる理由を見つけようとしています。適用された変換に関係なく、常にウィンドウに変換された画像 (アフィン変換の結果) を表示できますか?
更新:これは、すべての変換が座標系の原点(画像の左上隅)に対して計算されるために発生すると思います。回転の場合は回転の中心を指定でき、結果を表示できますが、スケーリングを実行すると、変換された画像の移動先を制御できません。画像がウィンドウに収まるように座標系を何らかの方法で移動することは可能ですか?
Update2: ある位置に ROI のみを含む画像 (画像の残りの部分は黒) があり、一連のアフィン変換を適用する必要があります。物事を単純化し、個々の変換の効果を確認するために、各変換を 1 つずつ適用しました。私が気づいたのは、ROI の中心が座標系の中心 (ビュー ウィンドウの左上隅) になるように画像を移動 (平行移動) するたびに、すべてのアフィン変換が移動せずに正しく実行されることです。ただし、ROI の中心を座標系の中心に移動すると、ROI の上部と左側の部分が現在のビュー ウィンドウから切り取られたままになります。ROI の中心点をビュー ウィンドウ内の別の点 (ウィンドウの中心など) に移動すると、次のタイプのアフィン変換が行われます: A=[a 0 0; 0 b 0] (A は 2x3 行列、warpAffine 関数のパラメーター) は、画像 (ROI) をビュー ウィンドウの外に移動します (ROI の中心が左上隅にある場合は移動しません)。画像がその場所から移動しないようにアフィン変換を変更するにはどうすればよいですか (ROI の中心が座標系の中心にある場合と同じように動作します)。