我正在尝试在 openCV java 中循环播放帧视频 这是我的代码
Mat frame = new Mat();
int numOfFrames = 0;
boolean hasNext = true;
while(hasNext){
hasNext = video.read(frame);
numOfFrames++;
}
问题是,它一直循环下去,没有结果,也没有错误,也没有内存泄漏! 请帮忙
最佳答案
您编写的 while 循环需要某种类型的条件来中断循环。由于代码现在是 while 循环显然永远循环。
例如,您可以做这样的事情来避免死循环。
boolean hasNext = true;
while(hasNext) {
hasNext = video.read(frame);
numOfFrames++;
if(numOfFrames == 100) {
break; // calling this will break out of the loop
}
} // end while loop
或者您可以简单地添加一个 break;
但它只会迭代一次。也许 for 循环是更好的选择? :D
希望这对您有所帮助。
OpenCV 有一个 Java 包装器,这很酷。我在一本C编程书上看到过这个程序。
关于java - 迭代openCV java中的视频帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21417112/