在opencv中调用resize函数失败怎么解决?

卷积神经网络对肺部CT图片识别中,在opencv中调用resize函数失败怎么解决?

img

img

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/1061715
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:opencvsharp中resize图像
  • 除此之外, 这篇博客: opencv resize改变图片尺寸中的 函数原型 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • CV_EXPORTS_W void resize( InputArray src,
                              OutputArray dst,
                              Size dsize, 
                              double fx=0, 
                              double fy=0,  
                              int interpolation=INTER_LINEAR );  
    
  • 以下回答由chatgpt基于相关博客总结生成:

    针对使用opencv的resize函数遇到的问题,可以按照以下步骤进行解决:

    1.确定resize函数的参数: resize函数有多个参数需要指定,例如输入图像、输出图像的大小、缩放比例、插值方式等。需要根据具体情况确定这些参数的值,确保调用函数的时候输入、输出图像大小和类型匹配并且缩放比例和插值方式符合要求。

    2.注意细节问题: 在使用resize函数的时候,需要注意一些细节问题。例如,保证输入、输出图像大小和类型的一致性,避免出现歧义。此外,可以通过指定一些特殊参数,例如fx、fy等参数,来调整缩放比例。也可以通过设置interpolation参数,来改变缩放过程中使用的插值方式。

    3.根据具体情况选择不同的插值方式: resize函数中有多种插值方式可供选择,包括最邻近插值、双线性插值、双立方插值、Lanczos插值等。这些插值方式各有优缺点,并且在不同的情况下适用。因此,需要根据实际需求选择合适的插值方式,达到最优的效果。

    4.参考代码示例: 下面是一段参考代码示例,用于演示如何使用opencv的resize函数,以及如何指定缩放比例和插值方式:

    Mat src = imread("source.jpg");
    Mat dst;
    
    // 调整大小为原图的一半
    resize(src, dst, Size(), 0.5, 0.5, INTER_LINEAR);
    
    // 按比例调整大小
    resize(src, dst, Size(), 0.8, 0.8, INTER_LINEAR);
    
    // 使用双立方插值
    resize(src, dst, Size(), 0.8, 0.8, INTER_CUBIC);
    

    如果以上方法都不能解决问题,可以尝试在网上查找更多资料,或者咨询其他专家的建议。

因为你的图片是空的,所以裁剪不对。检查一哈图片路径