2016-05-31 20 views
0

一般:OpenCV Java |

OpenCVで顔検出プログラムをプログラミングしてOpenCVをインストールしていない他のコンピュータで動作させたいと思っています。私のプログラムはMac OS X、Linux、Windows用です。私を指していることを

絶対パスがあるので、私はその後、私は私の第二のMacにコピーされた、私の最初のMac上でそれをコンパイルしようとしたが、私は常にエラーを取得する(と思う):私はすでにTRIED WHAT

デスクトップ(最初のMacでライブラリをコンパイルした場所)。 これらの絶対パスを相対パスに書き直すことができるかどうか教師に尋ねましたが、それは不可能だと言いました。今ここにイム:)

CODE:(ニースの書式のxD)

public static void loadOpenCVLibrary() { 
    //all opencv libs must be copyed to OpenCV_lib in the project workspace 

    File folder = new File(directory+seperator+"System"+seperator+"OpenCV_Linux"+seperator+"build"+seperator+"lib"+seperator); 
    //File folder = new File("/Users/Tech/Documents/Development/workspace/opencv-3.0.0/bin/"); 
    File[] listOfFiles = folder.listFiles(); 

for (int i = 0; i < listOfFiles.length; i++) { 
    if (listOfFiles[i].isFile() && listOfFiles[i].getName().endsWith(".dylib")) { 
     File lib = new File(directory+seperator+"System"+seperator+"OpenCV_Linux"+seperator+"build"+seperator+"lib"+seperator + listOfFiles[i].getName()); 
     //File lib = new File("/Users/Tech/Documents/Development/workspace/opencv-3.0.0/bin/" + listOfFiles[i].getName()); 
     System.load(lib.getAbsoluteFile().toString()); 
    } 
}} 

あなたはより多くに関する情報が必要な場合は、メッセージ:)

はどうもありがとうございましたを送ります! テック

答えて

0

Eclipseを使用している場合は、これを試すことができます。

  1. は、現在のプロジェクト(だけでなく、瓶、 全体フォルダ)にあなたのOpenCVのフォルダをコピーします。
  2. 今どこのフォルダに再びワークスペースを選択し、この時点瓶のメニューを開き、ネイティブライブラリを選択して編集
  3. をクリックして、あなたにBuildPathを開き、(ワークスペースではない絶対オーバー)OpenCVの瓶
  4. を追加linux/windows(必要なもの)のネイティブライブラリは

です。* .jarをビルドすると、ライブラリが内部にあり、実行する必要があります。

これはすべてのプラットフォームではなく、選択したプラットフォームでのみ実行されることに注意してください。

クロスplattformのランニングは、潜在的な問題である場合にも、クラスパスオプションの上に積載OpenCVのに見ることができます:Load Native Library from Class path

+0

今ではそのように見ている... http://prntscr.com/bduxfg。私はSystem.loadLibrary(Core.NATIVE_LIBRARY_NAME)を使用します。それはEclipseでのみ動作しています、私は正しいパスを設定する必要がありますので、私のメソッド "loadOpenCVLibrary()を使用していません私の質問でそれが動作していません。私は変更する必要があります。しかし、助けてくれてありがとう:) – Tech

+0

@Techそれ以外の場合はEclipse以外の作業をする必要がありますか?そのような場合は、あなたのソースコントロールにプロジェクトを確認し、それをどこにでもダウンロードして使用することができるはずです。または、あなたは瓶を意味しますか? – Gildraths

+0

これはすでに輸出可能で、私のMacで使えるものでしたが、私は顧客にプログラムを販売したいと思います。 – Tech