• 解决opencv3运行opencv2代码时报错的修改备忘录


    虽然opencv3是基于opencv2进行开发的(一部分opencv2代码在opencv3中还能正常运行),但opencv3自身也做了部分修改,而目前网上很多教程还是基于opencv2的函数API来编写的,这导致在使用opencv3时会遇到各种函数未定义之类的问题。因而,为了方便今后查阅,同时避免更多人踩坑,在此总结一下opencv3相对于opencv2的改动之处。


    opencv3中取消了旧版本中的"cv_"前缀命名,并使用了新的命名规范,主要分为以下几类:

    (1)直接去掉"CV_"前缀

    • namedWindow函数,将cv_WINDOW_AUTOSIZE改为WINDOW_AUTOSIZE
    • line函数及其同一类的绘图函数,cv_filed改为filled
    • threshold函数,cv_thresh_binary改为thresh_binary
    • remap函数,cv_inter_linear改为inter_linear
    • 鼠标操作函数setmousecallback,将cv_event_lbuttonup改为event_lbuttonup,其他类似。
    • imwrite写图片函数,将cv_inpaint_telea改为inpaint_telea,cv_inpaint_ns改为inpaint_ns
    • 设置摄像头尺寸时将cv_cap_prop_frame_width改为cap_prop_frame_width,cv_cap_prop_frame_height 改为 cap_prop_frame_height

    ..等等一些函数可以直接将"cv_"前缀去除。

    (2)需要新的前缀

    • line函数中一些绘函数中的参数,cv_AA改为LINE_AA
    • cvtColor函数中颜色转换系的宏,全替换为"COLOR_"前缀,如CV_BGR2HSV改为COLOR_BGR2HSV
    • normalize函数,将cv_MINMAX改为NORM_MINMAX 等等

    (3)其他

    • 定义尺寸时将cvSize(-1,-1)改为Size(-1,-1)
    • 在表示颜色时,将cv_RGB改为Scalar。
    • 设置视频格式的fourcc,cv2.x版本中中形式为cv2.cv.fourcc,在cv3,0以上的版本中应为cv2.VideoWriter_fourcc,需要特别注意。

    关于fourcc函数,真是大坑,各种搜索后才知道,原来函数名改了(⊙o⊙)

    Reprinted from: http://blog.csdn.net/cike14/article/details/50627857

  • 相关阅读:
    字符串习题小结
    字符串处理指令以及控制台输入
    初次接触JAVA有关重点
    常用的正则表达式
    JS里日历的两种写法
    win10 系统连不上打印机 操作无法完成(错误Ox00000709) 台式机无线网卡 设置固定IP 之后 IP变了
    win10 visual studio2019 目标框架选不到.net 4.8
    JsonPath 简单入门 与 xpath
    IIS 搭建HTTPS站点
    java mave 打包问题 发布找不到驱动类
  • 原文地址:https://www.cnblogs.com/gxcdream/p/7531592.html
Copyright © 2020-2023  润新知