ホームページ 運用・保守 Linuxの運用と保守 Java はどのように OpenCV so ライブラリを LINUX にロードしますか?

Java はどのように OpenCV so ライブラリを LINUX にロードしますか?

May 26, 2023 pm 05:18 PM
linux java opencv

この例は機能しない可能性があります。その理由は、依存ライブラリのロードの問題です。 libopencv_java.so:

  • に他のすべての so 関数が含まれている場合、上記のブログ投稿は正しいことになります。

  • これが含まれていない場合は、特定の読み込みスキルが必要です。

コード例は次のとおりです。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

package taishan;

  

import java.io.File;

import java.util.LinkedList;

import java.util.List;

 

import org.opencv.core.CvType;

import org.opencv.core.Mat;

  

@SuppressWarnings("serial")

public class OpenCVTest

{

    public final static String LIB_PATH = "/home/wuxi/eclipse-workspace/OpenCVTest/libs/bin";

     

    private static List<File> getOpenCVFiles(final String dirName)

    {

        if (dirName == null)

        {

            return null;

        }

        File dir = new File(dirName);

        if (!dir.exists() || !dir.isDirectory())

        {

            return null;

        }

         

        File[] files = dir.listFiles();

        List<File> fileList = new LinkedList<File>();

        for (File file : files)

        {

            String name = file.getName();

            if (   name.startsWith("lib") && name.endsWith(".so"))

            {

                fileList.add(file);

            }

        }

        return fileList;

    }

 

    private static void loadNativeOpenCV(final String dirName)

    {

        List<File> fileList = getOpenCVFiles(dirName);

        if (fileList == null || fileList.size() == 0)

        {

            return;

        }

         

        while (fileList.size() > 0)

        {

            for (int i=0; i<fileList.size(); i++)

            {

                File file = fileList.get(i);

                try

                {

                    System.load(file.getAbsolutePath());

                }

                catch (java.lang.Throwable e)

                {

                    continue;

                }

                 

                fileList.remove(i);

                i--;

            }

        }

         

        //如果libopencv_java.so在另外目录,需要单独加载

        //System.load(Dir+"/"+"lib"+Core.Core.NATIVE_LIBRARY_NAME+"."+LIB_SUFFIX_LINUX);

    }

     

    public static void main(String[] args)

    {

        loadNativeOpenCV(LIB_PATH);

         

        Mat m  = Mat.eye(3, 3, CvType.CV_8UC1);  

        System.out.println("m = " + m.dump());  

    }

}

ログイン後にコピー

重要な文は、so パッケージを正しく見つけることです。

以上がJava はどのように OpenCV so ライブラリを LINUX にロードしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Deepseek Webバージョンの入り口Deepseek公式ウェブサイトの入り口 Deepseek Webバージョンの入り口Deepseek公式ウェブサイトの入り口 Feb 19, 2025 pm 04:54 PM

Deepseek Webバージョンの入り口Deepseek公式ウェブサイトの入り口

DeepSeekをインストールする方法 DeepSeekをインストールする方法 Feb 19, 2025 pm 05:48 PM

DeepSeekをインストールする方法

Java 8 Stream Foreachから休憩または戻ってきますか? Java 8 Stream Foreachから休憩または戻ってきますか? Feb 07, 2025 pm 12:09 PM

Java 8 Stream Foreachから休憩または戻ってきますか?

Bitget公式ウェブサイトのインストール(2025初心者ガイド) Bitget公式ウェブサイトのインストール(2025初心者ガイド) Feb 21, 2025 pm 08:42 PM

Bitget公式ウェブサイトのインストール(2025初心者ガイド)

Java をシンプルに: プログラミング能力を高める初心者向けガイド Java をシンプルに: プログラミング能力を高める初心者向けガイド Oct 11, 2024 pm 06:30 PM

Java をシンプルに: プログラミング能力を高める初心者向けガイド

未来を創る: まったくの初心者のための Java プログラミング 未来を創る: まったくの初心者のための Java プログラミング Oct 13, 2024 pm 01:32 PM

未来を創る: まったくの初心者のための Java プログラミング

カプセルの量を見つけるためのJavaプログラム カプセルの量を見つけるためのJavaプログラム Feb 07, 2025 am 11:37 AM

カプセルの量を見つけるためのJavaプログラム

OUYI OKXインストールパッケージが直接含まれています OUYI OKXインストールパッケージが直接含まれています Feb 21, 2025 pm 08:00 PM

OUYI OKXインストールパッケージが直接含まれています

See all articles