OpenCV を使用して、より大きな画像上で移動およびサイズ変更できる 2D ビューポートを提供するアプリケーションを実装しています。
これを行うには、ソース画像のサブエリアを取得し、それをサブピクセル精度で出力にレンダリングできる必要があります。実際には、この操作はクロップとサイズ変更を組み合わせたものです。
getRectSubPixを使用してサブピクセルの精度で画像をトリミングし、出力ビューポートの解像度にサイズ変更できます。ただし、これには問題があります。getRectSubPix はソース イメージと同じ解像度のイメージを返すため、ビューポートをソース イメージの解像度に関して幅と高さが整数のサイズに制限します。スムーズにズームできるようにする必要があるため、これはアプリケーションでは受け入れられません。
代わりに、最初に出力されたビューポートと同じ解像度に画像のサイズを変更してから、トリミングすることができます。ただし、大きな画像で小さなビューポートを扱う場合、これには多くの不要な作業とスペースが必要になります。
必要なのは、画像のサイズ変更とトリミングを同時に行う複合プロセスです。Open CV でこれを行う最も簡単な方法を知っている人はいますか?