Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中对图像进行逐行扫描?_Java_Filter_Xuggle - Fatal编程技术网

如何在Java中对图像进行逐行扫描?

如何在Java中对图像进行逐行扫描?,java,filter,xuggle,Java,Filter,Xuggle,我正在使用Xuggle播放ip摄像机中的隔行视频,并且确实需要解隔行选项,该选项存在于FFMpeg中(Xuggle是FFMpeg库上的java包装器) 不幸的是,解交错选项(“-vf yadif”,如果我没弄错的话)并没有被Xugle公开。所以,我对java缓冲区图像去隔行扫描的纯java解决方案或使Xugle实现这一点的某种方法感兴趣 现在,我只需复制奇数行并丢弃偶数行。它很快,但质量当然不是很好 // Interlaced image BufferedImage img = (Buffere

我正在使用Xuggle播放ip摄像机中的隔行视频,并且确实需要解隔行选项,该选项存在于FFMpeg中(Xuggle是FFMpeg库上的java包装器)

不幸的是,解交错选项(“-vf yadif”,如果我没弄错的话)并没有被Xugle公开。所以,我对java缓冲区图像去隔行扫描的纯java解决方案或使Xugle实现这一点的某种方法感兴趣

现在,我只需复制奇数行并丢弃偶数行。它很快,但质量当然不是很好

// Interlaced image
BufferedImage img = (BufferedImage) event.getImage();

//duplicate odd lines
WritableRaster raster = img.getRaster();
for (int i = 0; i < raster.getHeight(); i += 2) {
    int[] arr2  = null;
    raster.setPixels(0, i + 1, raster.getWidth(), 1, 
            raster.getPixels(0, i, raster.getWidth(), 1,arr2));
}    
//now img is deinterlaced
//隔行扫描图像
BuffereImage img=(BuffereImage)事件。getImage();
//重复奇数行
WritableRaster raster=img.getRaster();
对于(int i=0;i

有人能在这方面帮助我吗?

我通过JNI使用了FFMPEG的yadif过滤器。Java实现非常缓慢。

我通过JNI使用了FFMPEG的yadif过滤器。Java实现非常缓慢