Repolode
bytedeco

bytedeco/javacv

OpenCV、FFmpegなどのコンピュータビジョン・マルチメディアライブラリ向けJavaラッパーとヘルパークラス。

スター
8,350
フォーク
1,615
未解決の Issue
466
最終コミット
2 か月前

これは何?

JavaCVを使うと、Java開発者はOpenCVやFFmpegなど、広く使われているコンピュータビジョン・マルチメディアライブラリを利用できます。ラッパーはJavaCPP Presetsをベースに構築されており、クラス定義は元のC/C++ヘッダーに忠実に沿っているため、ネイティブコードと同じような形でOpenCVやFFmpegのAPIを呼び出せます。

低レベルのバインディングに加えて、JavaCVはよくある処理向けのヘルパークラスも提供します。ハードウェアアクセラレーションを利用した画像表示(CanvasFrame、GLCanvasFrame)、FrameGrabberによるカメラや動画ファイルからのフレーム取得、FrameRecorderによる動画書き込み、カメラとプロジェクターのキャリブレーション、特徴点マッチング、ブロブ解析などに対応しています。また、フレームとJava 2D、Androidのビットマップ、OpenCVのMatオブジェクトを相互に接続するコンバーターも備えています。

依存関係はjavacv-platformとしてMaven Centralから配布されており、Linux、macOS、Windows、Android向けのネイティブバイナリが同梱されています。一部のクラスでは、OpenCLおよびOpenGLの各種バリアントも利用できます。

主な機能

  • 01C/C++のAPIを踏襲した、OpenCVおよびFFmpeg向けJavaバインディング。
  • 02FrameGrabberの実装を通じた、カメラや動画ファイルからのキャプチャ。
  • 03FrameRecorderによる動画のエンコードと出力。
  • 04CanvasFrameおよびGLCanvasFrameによる、ハードウェアアクセラレーション対応の画像表示。
  • 05カメラとプロジェクターのキャリブレーション、特徴点マッチング、ブロブ解析のヘルパー。
  • 06Androidを含む複数プラットフォーム向けのネイティブバイナリを、MavenおよびGradle経由で配布。

ユースケース

  • JavaまたはKotlinで画像処理・コンピュータビジョンアプリケーションを構築する。
  • Webカメラや動画ストリームからフレームを取得し、リアルタイムで処理する。
  • Javaバックエンドで動画ファイルをトランスコードまたは録画する。
  • JVMベースのアプリケーションに顔検出や輪郭解析を追加する。

クイックスタート

  1. 1

    Java SE 8以降のJDKをインストールします

  2. 2

    バージョン1.5.14を指定して、pom.xml(Maven)またはbuild.gradle(Gradle)にjavacv-platform依存関係を追加します

使う前に知っておきたいこと

  • プロジェクトのライセンスはメタデータで明確に示されていません(NOASSERTION)。使用前にライセンスを確認してください。
  • javacv-platform依存関係はすべてのプラットフォーム向けのネイティブバイナリをダウンロードするため、javacpp.platformプロパティを設定しない場合はサイズが大きくなります。
  • 32ビットと64ビットのモジュールは混在できないため、すべてのコンポーネントでビット数を統一する必要があります。

トピック

よくある質問

javacv とは?
OpenCV、FFmpegなどのコンピュータビジョン・マルチメディアライブラリ向けJavaラッパーとヘルパークラス。 JavaCVを使うと、Java開発者はOpenCVやFFmpegなど、広く使われているコンピュータビジョン・マルチメディアライブラリを利用できます。ラッパーはJavaCPP Presetsをベースに構築されており、クラス定義は元のC/C++ヘッダーに忠実に沿っているため、ネイティブコードと同じような形でOpenCVやFFmpegのAPIを呼び出せます。
javacv は無料で使えますか?ライセンスは?
javacv は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
javacv は今もメンテナンスされていますか?
半年以内に更新あり。javacv の最終コミットは 2026年8月12日 です。
javacv は何に使えますか?
JavaまたはKotlinで画像処理・コンピュータビジョンアプリケーションを構築する。 Webカメラや動画ストリームからフレームを取得し、リアルタイムで処理する。 Javaバックエンドで動画ファイルをトランスコードまたは録画する。 JVMベースのアプリケーションに顔検出や輪郭解析を追加する。
javacv のインストール方法は?
Java SE 8以降のJDKをインストールします バージョン1.5.14を指定して、pom.xml(Maven)またはbuild.gradle(Gradle)にjavacv-platform依存関係を追加します
javacv はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/bytedeco/javacv

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト