こんにちは。
JavaCV(OpenCV)をEclipse + Mavenで使用できる様に環境構築しております。
Mavenを使用しない場合の設定手順は、こちらに書かれているのですが、使用した方が便利なので、色々と試しているのですが上手くいきません。
参考にしているサイトは、下記になります。
Mavenを利用して、好きなJavaライブラリを環境に追加する。
サイトに習って、下記をpomファイルに追記しました。
pom.xml
<dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.4.2</version> </dependency> <dependency> <groupId>org.bytedeco.javacpp-presets</groupId> <artifactId>opencv-platform</artifactId> <version>3.4.2-1.4.2</version> </dependency> <dependency> <groupId>org.bytedeco.javacpp-presets</groupId> <artifactId>ffmpeg-platform</artifactId> <version>4.0.1-1.4.2</version> </dependency>
ソースコードは下記になりますが、途中でエラーが発生しました。
Main.java
package main; import java.io.IOException; import org.opencv.core.Mat; import org.opencv.core.Size; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; public class Main { public static void main(String[] args) throws IOException { // //System.loadLibrary(Core.NATIVE_LIBRARY_NAME); //必要なのか不明 //ルートパス String pathRoot = System.getProperty("user.dir"); //ファイルパス String pathFileFrom = pathRoot + "/src/sample.jpg"; String pathFileTo = pathRoot + "/src/sampleOut.jpg"; //マトリックス Mat matFrom = Imgcodecs.imread(pathFileFrom); //<---- エラー発生 Mat matTo = Imgcodecs.imread(pathFileTo ); //サイズ int sizeX = 200; int sizeY = 200; //リサイズ Imgproc.resize(matFrom, matTo, new Size(sizeX, sizeY)); //保存 Imgcodecs.imwrite(pathFileTo, matTo); } }
エラー内容は下記になります。
error.txt
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.imgcodecs.Imgcodecs.imread_1(Ljava/lang/String;)J at org.opencv.imgcodecs.Imgcodecs.imread_1(Native Method) at org.opencv.imgcodecs.Imgcodecs.imread(Imgcodecs.java:127)
jarファイルは、mavenから参照しているので追加の必要はないのかなと思ったのですが、どなたか原因が分かる方、ご教授頂けると幸いです。
まだ回答がついていません
会員登録して回答してみよう