vs2012 + cmake3.24.6 生成 opencv-3.0.0-rc1 + opencv_contrib-3.0.0-rc1

参考 https://blog.csdn.net/qq_39707351/article/details/80100778

一、cmake (foreach)多余的* 转义
cmake 填写 OPENCV_EXTRA_MODULES_PATH时,使用双斜杠或者反斜杠,或者直接在编辑框里打开

二、binary_descriptor.cpp未定义round
添加

#include <math.h>
double round(double r)
{
    return (r > 0.0) ? floor(r + 0.5) : ceil(r - 0.5);
}

三、motionSaliencyBinWangApr2014.cpp未定义NAN
“/opencv/sources/3rdparty/include/ffmpeg_/libavutil/mathematics.h” 中定义NAN,但是直接包含该文件仍然解决不了。于是逐级拷贝。代码如下:

#ifdef __GNUC__
#    define AV_GCC_VERSION_AT_LEAST(x,y) (__GNUC__ > x || __GNUC__ == x && __GNUC_MINOR__ >= y)
#else
#    define AV_GCC_VERSION_AT_LEAST(x,y) 0
#endif


#ifndef av_always_inline
#if AV_GCC_VERSION_AT_LEAST(3,1)
#    define av_always_inline __attribute__((always_inline)) inline
#elif defined(_MSC_VER)
#    define av_always_inline __forceinline
#else
#    define av_always_inline inline
#endif
#endif


union av_intfloat32 {
    uint32_t i;
    float    f;
};

static av_always_inline float av_int2float(uint32_t i)
{
    union av_intfloat32 v;
    v.i = i;
    return v.f;
}

#ifndef NAN
#define NAN            av_int2float(0x7fc00000)
#endif

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值