簡単に説明するのは難しいのですが、幾何学変換を使えば「画像の拡大・縮小」や「画像の回転」などが実現できるようになります。して、画像の幾何学変換では以下の数式が成り立ちます。d」の行列は変換行列を表します。今回行う幾何学変換において、この変換行列というのは重要で、この変換行列に特定の値を設定することで「拡大・縮小」や「回転」などの操作ができます。計算方法では、変換行列を用いて、画像を幾何学変換する計算方法を紹介します。この計算方法は、変換の種類によらず、基本的には同じ計算方法になります。\end{bmatrix}\)とします。Aの逆行列を生成します。matrix)とは、ある行列と掛け算した結果が、単位行列になるものを指します。\end{bmatrix}\)非常に面倒くさい計算と思うかもしれませんが、逆行列を生成する公式は存在するので、その公式を使って逆行列を生成していきます。\end{bmatrix}\)逆行列を求めたら、この行列の値を使って、抽出画素を計算します。この抽出画素というのは、縮小変換の例でいうと、以下の画像のような画素を指します。抽象された画素を「変換後の画像を保存する配列」に代入します。以下の変換行列を用います。\end{bmatrix}\)例えば、幅・高さをそれぞれ2倍に拡大するなら、こうなります。\end{bmatrix}\)逆に、\(\frac{1}{2}\)倍に縮小させる場合は、こうなります。\end{bmatrix}\)それでは、先ほど紹介した計算方法を元に、変換後の画像を生成していきます。ord('q'):breakcv2.destroyAllWindows()結果マーカー部分が変換行列の設定をしている部分です。0.5結果プログラムは「変換行列」の設定を変えるだけです。今回は「0.5」を設定したので、幅・高さがそれぞれ\(\frac{1}{2}\)のサイズに縮小されました。「回転」は、以下の変換行列を用います。\end{bmatrix}\)\(\theta\)の値は、回転角度です。6\)(30°)」時計回りに回転しています。以下の変換行列を用います。0結果まるで裏返したかのように、上下反転させることができました。0結果Y軸に対して線対称変換を行うと、左右反転を行うことができます。2つの画像はフリー画像ですので、ご自由にダウンロードしてください。今回はこの2つの画像を使用します。全体的にアルファブレンドをしていきますPython【OpenCV】マスク処理を使って、画像を重ね合わせる【Python】マスク処理を行えば、画像を重ね合わせることができます。この2つの画像を重ね合わせます。すると、このように合成されます。これがマスク処理です。行う記事を公開しましたが、今回は「RGB成分」のどれか1つだけに反映させる方法を紹介します。今回使用する画像はこちらです。普通に顔認識を行なっていきます。速度が遅いので、100カウント分のデータを取ることにします。実際に算出した平均値のデータは、「51.94ms」となりました。上記の画像では、特定の画素とその周りの8つの画素との画素値の差が示されています。上記の微分オペレータと呼ばれるものを、各画素に掛けていき、計算された値を合計し、絶対値をPython【OpenCV】ルックアップテーブルを用いた階調変換【Python】この記事では、ルックアップテーブルを用いた画像処理をいくつか紹介していきます。コメントをキャンセルメールアドレスが公開されることはありません。R1カテゴリーJavaJavaFXJavaScriptPythonRこのサイトの管理人IT系だんしプログラミングが大好きな人。趣味でゲームやツール製作をしながら、プログラミング記事を書き続けています。