当前位置: 首页 > 知识库问答 >
问题:

图像拼接:NullPointerException

王翰墨
2023-03-14

我运行了这段代码。结果似乎没有生成result.png:

public class ImageStitching {

    public static void main(String[] args){
        MatVector images = new MatVector(2);
        images.put(0,cvLoadImage("sample1.png"));
        images.put(1,cvLoadImage("sample2.png"));

        IplImage result = new IplImage(null);
        int status = stitcher.stitch(images,result);

        if( status == stitcher.OK )
        {
            cvSaveImage("result.png", result);
        }

       result = cvLoadImage("result.png");

       final CanvasFrame canvas = new CanvasFrame("My Image", 1);

       // Request closing of the application when the image window is closed.
       canvas.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);

       // Show image on window.
       canvas.showImage(result);

      }
}

并且误差为

Exception in thread "main" java.lang.NullPointerException
at com.googlecode.javacv.CanvasFrame.showImage(CanvasFrame.java:366)
    at com.googlecode.javacv.CanvasFrame.showImage(CanvasFrame.java:363)
    at ImageStitching.main(ImageStitching.java:50)

java:50 is canvas.showImage(result);

共有1个答案

娄建义
2023-03-14

显然,当您调用show Image时,结果为空。

您的代码中的问题是您测试状态是否正常(< code>if ( status == stitcher。OK )),然后你还是尝试加载文件。您的代码应该类似于:

if ( status != stitcher.OK )
{
    std::cout << "ERROR" << std::endl;
    return 1;
}

然后你可能会发现问题来自缝合。

此外,在显示文件之前,不需要将结果写入文件。

 类似资料:
  • 这是代码 这里还有一些图片的链接:https://www.dropbox.com/sh/ovzkqomxvzw8rww/AAB2DDCrCF6NlCFre7V1Gb6La?dl=0非常感谢你,拉菲

  • 我一直在运行一个从多个相机拼接图像的项目,但我认为我遇到了瓶颈......我对这个问题有一些问题。 我想尝试在未来将它们安装在车辆上,这意味着相机的相对位置和方向是固定的。 此外,由于我使用多个摄像机,并尝试使用单应性从中缝合图像,我将尽可能靠近摄像机,以减少误差(由于摄像机的焦点不在同一位置,并且摄像机占据一定空间是不可能的)。 这是我的实验短片http://www.youtube.com/wa

  • 本文向大家介绍python实现图像拼接,包括了python实现图像拼接的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python实现图像拼接的具体代码,供大家参考,具体内容如下 1.待拼接的图像 2. 基于SIFT特征点和RANSAC方法得到的图像特征点匹配结果 3.图像变换结果 4.代码及注意事项 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 本文向大家介绍python opencv进行图像拼接,包括了python opencv进行图像拼接的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python opencv进行图像拼接的具体代码,供大家参考,具体内容如下 思路和方法 思路 1、提取要拼接的两张图片的特征点、特征描述符; 2、将两张图片中对应的位置点找到,匹配起来; 3、如果找到了足够多的匹配点,就能将两幅图拼接起来,

  • 本文向大家介绍opencv实现多张图像拼接,包括了opencv实现多张图像拼接的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了opencv实现多张图像简单拼接,供大家参考,具体内容如下 效果如下: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 本文向大家介绍python实现图像拼接功能,包括了python实现图像拼接功能的使用技巧和注意事项,需要的朋友参考一下 利用Python将Market1501的分割图片和原图两张图片进行拼接成一左一右一张图片,并将图片的像素值调整成256*128. 所有文件夹: 文件夹下的所有原图:  文件夹下的所有的分割图片: 代码如下: 单独图片的拼接效果: 新文件夹new下图片的效果: 本文已被收录到专题《