StretchDIBits 直接使用cv::Mat的数据有可能显示错误的问题

简介: StretchDIBits 直接使用cv::Mat的数据有可能显示错误的问题
StretchDIBits(hDC,
        0,
        0,
        img.cols,//drect.right, //显示窗口宽度
        img.rows,//drect.bottom, //显示窗口高度
        0,
        0,
        img.cols, //图像宽度
        img.rows, //图像高度
        img.data,
        bitMapinfo,
        DIB_RGB_COLORS,
        SRCCOPY
        );

假定位图头和调色板完全正确。显示错误的原因:

位图每行数据都4字节对齐,OpenCV的cv::Mat没有这个对齐。

所以数据会错位。

相关文章
|
3月前
|
算法 计算机视觉
Opencv学习笔记(六):cv2.resize函数的介绍
这篇文章介绍了OpenCV库中cv2.resize函数的使用方法,包括其参数、插值方式选择以及实际代码示例。
511 1
Opencv学习笔记(六):cv2.resize函数的介绍
|
3月前
|
计算机视觉
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
这篇文章详细介绍了OpenCV库中的图像二值化函数`cv2.threshold`,包括二值化的概念、常见的阈值类型、函数的参数说明以及通过代码实例展示了如何应用该函数进行图像二值化处理,并展示了运行结果。
619 0
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
|
5月前
|
存储 计算机视觉
OpenCV 中 CV_8UC1,CV_32FC3,CV_32S等参数的含义
OpenCV 中 CV_8UC1,CV_32FC3,CV_32S等参数的含义
355 3
|
7月前
|
计算机视觉
【已解决】cv2.imread读取中文名称图片报错或者无法保存中文名图片:使用cv2.imdecode与cv2.imencode解决
【已解决】cv2.imread读取中文名称图片报错或者无法保存中文名图片:使用cv2.imdecode与cv2.imencode解决
|
7月前
|
存储 算法 API
OpenCV 3.1.0中的Mat对象使用
OpenCV 3.1.0中的Mat对象使用
49 2
|
8月前
|
计算机视觉 Python
opencv cv::Range()和cv::Rect()用于crop来获得感兴趣区域
opencv cv::Range()和cv::Rect()用于crop来获得感兴趣区域
283 0
|
算法 计算机视觉
OpenCV-漫水填充cv::floodFill
OpenCV-漫水填充cv::floodFill
213 0
|
数据处理 计算机视觉 Python
应用matplotlib的imshow函数显示彩色图像(RGB data)报错的解决方法
而且,只在处理彩色图像时出现错误提示,显示为空白图像;处理灰度图像时函数运行正常、显示图像。
551 0
|
API C语言 计算机视觉
三天学会opencv(三)——Mat对象
三天学会opencv(三)——Mat对象
148 0
三天学会opencv(三)——Mat对象
|
计算机视觉
OpenCV中,CV_FILLED(-1),其他值表示线宽
OpenCV中,CV_FILLED(-1),其他值表示线宽
52 0