我正在使用OpenCV进行对象检测项目。我试图使用VideoCapture从存储的视频文件中读取帧,但在OpenCV Java中没有当前的实现。我遵循这篇文章中的指示:open video file with opencv java,编辑OpenCV Java的源文件以允许此功能。问题是我不知道如何重新编译这些文件? - 因为我刚刚将下载的opencv jar文件添加到了我的eclipse项目中。重新编译用于Eclipse的OpenCV Java
回答
您应该尝试JavaCV,这是一个用于Java的OpenCV封装器。
This post显示您需要下载/安装以使系统正常工作,但我相信您可以在Web上找到更多更新的帖子。
一个在我的OpenCV的迷你课程,目前我演示包含使用JavaCV加载视频文件,并在窗口上显示它的源代码:
import static com.googlecode.javacv.cpp.opencv_core.*;
import static com.googlecode.javacv.cpp.opencv_imgproc.*;
import static com.googlecode.javacv.cpp.opencv_highgui.*;
import com.googlecode.javacv.OpenCVFrameGrabber;
import com.googlecode.javacv.FrameGrabber;
public class OpenCV_tut4
{
public static void main(String[] args)
{
FrameGrabber grabber = new OpenCVFrameGrabber("demo.avi");
if (grabber == null)
{
System.out.println("!!! Failed OpenCVFrameGrabber");
return;
}
cvNamedWindow("video_demo");
try
{
grabber.start(); // initialize video capture
IplImage frame = null;
while (true)
{
frame = grabber.grab(); // capture a single frame
if (frame == null)
{
System.out.println("!!! Failed grab");
break;
}
cvShowImage("video_demo", frame);
int key = cvWaitKey(33);
if (key == 27) // ESC was pressed, abort!
break;
}
}
catch (Exception e)
{
System.out.println("!!! An exception occurred");
}
}
}
谢谢。我会研究它。我还应该提到该计划将在Android上。 JavaCV会和OpenCV4Android非常相似吗? – user3019612
我不知道,但我知道JavaCV接口与OpenCV的C API非常相似。 – karlphillip
谢谢。此外,我希望你可以帮助这个:我得到异常运行你的代码与以下错误信息:!!!发生异常 警告:打开文件时出错(../../modules/highgui/src/cap_ffmpeg_impl.hpp:529) – user3019612
- 1. Eclipse拒绝重新编译Java
- 2. OpenCV make失败 - “用-fPIC重新编译”
- 3. 编译用于OpenCV的PCL
- 4. 用于eclipse的java反编译器
- 5. OpenCV,eclipse编译问题
- 6. Java编译问题,Linux,来自Eclipse的项目在Linux上重新编译
- 7. Eclipse IDE的C/C++和OpenCV编译
- 8. 可重新编译的编译器 - 用于MS Visual Studio的DLL
- 9. 用于java的makefile,仅在文件更改时重新编译
- 10. Google Eclipse插件重新编译问题
- 11. Java:编辑并重新编译.jar?
- 12. 用OpenGL编译OpenCV
- 13. 如何使用重新编译的OpenCV for Android
- 14. 重新编译TJWS
- 15. 用Eclipse编译java 7 for java 6
- 16. 编译OpenCV没有sse用于ROS
- 17. Opencv C++ g ++ MakeFile用于更快编译
- 18. 用anaconda编译opencv
- 19. 如何在Eclipse中重新启用编译器警告?
- 20. Eclipse Java Android编译错误
- 21. eclipse中编译java文件
- 22. Java eclipse包编译错误
- 23. OpenCV的使用CUDA编译
- 24. 重新编译Java内置类
- 25. 如何重新编译Java函数?
- 26. Java玩! 2不重新编译
- 27. 强制java重新编译不良类
- 28. 为tomcat7重新编译java:运行
- 29. OpenCV编译Ubuntu
- 30. 编译OpenCV
谷歌“建设OpenCV的”,你应该得到你的答案。 – Bull
缺少的VideoCapture构造函数在2.4.7中修复。你将不必重新编译自己 – berak
嗨贝拉克。我有OpenCV 2.4.7,但VideoCapture(字符串文件名)构造函数仍然丢失。 – user3019612