OpenCV4相比于之前版本,有一些宏的名称和定义发生了变化。下面是一些比较重要的变化:
CV_LOAD_IMAGE_*
改为cv::IMREAD_*
在OpenCV4中,使用
cv::imread()
函数读取图片时,原来的CV_LOAD_IMAGE_*
宏已经被改为cv::IMREAD_*
。例如,CV_LOAD_IMAGE_COLOR
改为了cv::IMREAD_COLOR
,CV_LOAD_IMAGE_GRAYSCALE
改为了cv::IMREAD_GRAYSCALE
。
CV_8UC*
改为CV_8U*
在OpenCV4中,对于8位无符号整数的图像类型,原来的
CV_8UC*
宏已经被改为CV_8U*
。例如,CV_8UC1
改为了CV_8U1
,CV_8UC3
改为了CV_8U3
。
CV_WINDOW_NORMAL
改为cv::WINDOW_NORMAL
在OpenCV4中,用于创建窗口的
CV_WINDOW_NORMAL
宏已经被改为cv::WINDOW_NORMAL
。例如,cv::namedWindow("window", CV_WINDOW_NORMAL)
改为了cv::namedWindow("window", cv::WINDOW_NORMAL)
。
CV_BGR2GRAY
改为cv::COLOR_BGR2GRAY
在OpenCV4中,用于颜色空间转换的
CV_BGR2GRAY
宏已经被改为cv::COLOR_BGR2GRAY
。例如,cv::cvtColor(image, gray_image, CV_BGR2GRAY)
改为了cv::cvtColor(image, gray_image, cv::COLOR_BGR2GRAY)
。
CV_FILLED
改为cv::FILLED
在OpenCV4中,用于绘制填充的
CV_FILLED
宏已经被改为cv::FILLED
。例如,cv::rectangle(image, rect, color, CV_FILLED)
改为了cv::rectangle(image, rect, color, cv::FILLED)
。
以上是OpenCV4相对于之前版本的一些宏名称和定义变化,虽然这些变化可能不会对大多数OpenCV程序产生太大影响,但在编写新代码或更新现有代码时,还是需要注意这些变化。
以下是OpenCV4相对于之前版本的宏名称和定义变化的整理表格:
变化前的宏名称 | 变化后的宏名称 |
---|---|
CV_LOAD_IMAGE_COLOR | cv::IMREAD_COLOR |
CV_LOAD_IMAGE_GRAYSCALE | cv::IMREAD_GRAYSCALE |
CV_8UC1 | CV_8U1 |
CV_8UC3 | CV_8U3 |
CV_WINDOW_NORMAL | cv::WINDOW_NORMAL |
CV_BGR2GRAY | cv::COLOR_BGR2GRAY |
CV_FILLED | cv::FILLED |
希望这个表格可以更清晰地展示OpenCV4相对于之前版本宏名称和定义的变化。