Java OpenCVライブラリを使用してミラーイメージを作成するにはどうすればよいですか?
-
ImageIO.read()メソッドを使用して必要な画像を読み取ります。
-
画像の高さと幅を取得します。
-
結果を保存するために空のバッファリングされた画像を作成します
-
ネストされたforループを使用すると、画像の各ピクセルをトラバースします。
-
画像の幅を右から左に繰り返します。
-
getRGB()メソッドを使用してピクセル値を取得します。
-
setRGB()メソッドを使用して、新しい幅の値を置き換えて、ピクセル値を結果の画像オブジェクトに設定します。
例
import java.io.File; import java.io.IOException; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; public class MirrorImage { public static void main(String args[])throws IOException { //Reading the image File file= new File("D:\\Images\\tree.jpg"); BufferedImage img = ImageIO.read(file); //Getting the height and with of the read image. int height = img.getHeight(); int width = img.getWidth(); //Creating Buffered Image to store the output BufferedImage res = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); for(int j = 0; j < height; j++){ for(int i = 0, w = width - 1; i < width; i++, w--){ int p = img.getRGB(i, j); //set mirror image pixel value - both left and right res.setRGB(w, j, p); } } //Saving the modified image file = new File("D:\\Images\\mirror_image.jpg"); ImageIO.write(res, "jpg", file); System.out.println("Done..."); } }
入力
出力
-
Java OpenCVライブラリを使用してカラー画像をグレースケールに変換するにはどうすればよいですか?
cvtColor() Imgprocのメソッド クラスは、画像の色を変更/変換します。このメソッドは3つのパラメーターを受け入れます- src −ソースを表すMatrixオブジェクト。 dst −宛先を表すMatrixオブジェクト。 コード −宛先画像の色を表す整数値。 カラー画像をグレースケールに変換するには、 Imgproc.COLOR_RGB2GRAYを渡す必要があります このメソッドの3番目のパラメータとして。 例 import org.opencv.core.Core; import org.opencv.core.Mat; import org
-
Java OpenCVライブラリを使用してイメージを作成するにはどうすればよいですか?
OpenCVライブラリを使用すると、画像フィルタリング、幾何学的画像変換、色空間変換、ヒストグラムなどの画像処理操作を実行できます。 画像を書く Imgcodecsクラスのimread()メソッドを使用して画像のコンテンツを読み取るたびに、結果がMatrixオブジェクトに読み込まれます。 imwrite()メソッドを使用してイメージを書き込み/保存できます。これは2つのパラメータ、つまり-を受け入れます ファイル −結果を保存するファイルパスを表す文字列値。 Img −保存する画像のデータを含むマトリックスオブジェクト。 例 次のJavaの例は画像の内容を読み取りますc