ビデオからフレームを抽出し、gabor/houghなどのフィルタを適用したいと思います。すべての種類のビデオエンコーディングを処理するのに最適なJavaライブラリはどれですか?私はGStreamer、JMF、Xugglerなどを見てきましたが、どちらが最善かを決めることはできません。私はまた、フレームを編集し、新しいフレームでビデオを作りたいと考えています。Java用ビデオ処理ライブラリ
6
A
答えて
8
フレームを抽出して操作するなどの低レベル操作を行う場合は、APIがこの低レベルに合わせて調整されるため、Xugglerが最適です。これはffmpegで動作するので、すべてのタイプのビデオエンコーディングを処理できます。
古い、古い、バグのあるものは何でもJMFを使用しないでください.GStreamerは良いですが、APIはフレームを操作するのではなく、動画を再生することができます。
1
JMFは良い選択です。しかし、コード内で処理時間が重要な場合は、Xugglerを使用する方がよいでしょう。明らかに、JMFはXugglerより一般的です。
0
Xuggler、はい。しかし、多くの画像処理に取り組んでいる場合は、OpenImajに行ってください。このライブラリは依存関係としてXugglerを使用していますが、それだけではありません。 Opencvの能力をJavaで得るスピードの欠如なしに考えることができます。また、必要なのは、依存関係を追加することだけです。コード量も削減されます。
ノート:私はまだライブラリを見直していますが、これについての私の答えは更新され続けます。
1
あなたはMarvin Frameworkを試すことができます。ビデオ符号化とデバイスアクセスにJavaCVを使用しますが、すべての画像処理アルゴリズムは純粋なJavaです。
以下のエッジ検出の例に示すように、ビデオをロードしてリアルタイムでフレームを処理するのは非常に簡単です。
ソースコード:
import static marvin.MarvinPluginCollection.*;
public class SimpleVideoProcessing extends JFrame implements Runnable{
private MarvinVideoInterface videoAdapter = new MarvinJavaCVAdapter();
private MarvinImagePanel videoPanel = new MarvinImagePanel();
private MarvinImage videoFrame, videoOut = new MarvinImage(640,480);
public SimpleVideoProcessing() throws MarvinVideoInterfaceException{
super("Simple Video Processing using Marvin");
add(videoPanel);
// Load video file and start the processing thread
videoAdapter.loadResource("./res/snooker.wmv");
new Thread(this).start();
setSize(640,500);
setVisible(true);
}
public void run() {
try {
while(true){
// Request, process and show the video frame.
videoOut.clear();
videoFrame = videoAdapter.getFrame();
prewitt(videoFrame.clone(), videoOut);
videoPanel.setImage(videoOut);
}
} catch (MarvinVideoInterfaceException e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws MarvinVideoInterfaceException {
new SimpleVideoProcessing().setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
関連する問題
- 1. Pythonのビデオおよびオーディオ処理ライブラリ
- 2. Javaの信号処理ライブラリ?
- 3. Java/.NETのタスク処理ライブラリ
- 4. Android用画像処理ライブラリ
- 5. 音声処理用のPythonの音声処理ライブラリ
- 6. 画像処理ライブラリ
- 7. バッチ処理ビデオ(Matlab) - 問題
- 8. OpenCV 2.4 in python - ビデオ処理
- 9. アンドロイド、高速なビデオ処理
- 10. Androidでのビデオ処理
- 11. .NETでのビデオ処理
- 12. pubnub処理/ java用noob
- 13. オーディオ処理/サウンドファイル分割用のMacライブラリ
- 14. WinForms用ユーザーフレンドリー例外処理ライブラリ(.NET)
- 15. 信号処理用のC++ライブラリ
- 16. ライブラリでの例外処理
- 17. 最速画像処理ライブラリ
- 18. Dの画像処理ライブラリ?
- 19. ハスケル画像処理ライブラリ?
- 20. バックグラウンド処理java
- 21. Javaイメージ処理
- 22. 処理中の.javaタブでライブラリをインポートする
- 23. Javaでのプロトコル処理に最適なライブラリですか?
- 24. アンドロイドビルドシステムでネイティブ共有ライブラリをロードするJavaライブラリを処理する方法
- 25. Eclipse(Java)での外部ライブラリの使用方法とArduinoの処理
- 26. バックグラウンドでカメラのビデオを処理する
- 27. ビデオ処理のツールが必要
- 28. opencvで跳ね上がるビデオ処理
- 29. ビデオ録画中のAndroidプレビュー処理
- 30. java例外処理
ありがとう!私はそれがXugglerだと思います。また、OpenCV for Javaを手動で設定できるように見えます。http://answers.opencv.org/question/2137/wrapping-opencv-with-desktop-java-building-for-64/ - これが良いかどうかについてのアイディア? – abhishek
私はOpenCVをuesdしていないので、本当にコメントすることはできませんが、Xugglerの方に傾いているのは、純粋なJava APIなので、タスクを容易にするはずです。 – berry120