在使用opencv显示图像时会出现图像倒立的情况,IplImage的origin属性有关系。

origin为0表示顶左结构,即图像的原点是左上角,如果为1为左下角。

一般从硬盘读入的图片或者通过cvCreateImage方法创建的IplImage图片默认的origin为0,即显示的时候都是正的。

而由摄像头或者视频文件获取的帧图像origin为1,此时显示的时候扫描顺序是从下到上,显示也是正的(opencv显示的时候是根据origin的值显示的,如果origin=1,则从下到上显示,否则反之)。

但是如果你自己创建了一个IplImage格式的图像img,且从帧图像中copy或者截取一部分区域进行显示的时候就会出现倒立情况。这是因为cvCreateImage方法得到的img的origin是0,而帧图像的origin为1,它会将帧图像的第i行赋值给img的第height-i行,因此就出现了倒立.解决办法是:在创建之后将origin调整为与帧图像的origin一致即可。

IplImage* face=cvCreateImage(cvSize(width,height),copy_Frame->depth,copy_Frame->nChannels);
//因为IplImage的origin=0,所以要先将face->origin改为1
face->origin=copy_Frame->origin;//1

转载自:http://blog.sina.com.cn/s/blog_69c1befe0100l926.html

Opencv--图像颠倒的问题相关推荐

  1. OpenCV图像梯度(Sobel和Scharr)

    OpenCV图像梯度(Sobel和Scharr) 1 图像梯度是什么? 2 图像梯度的用途 3 图像梯度的使用 参考 这篇博客将介绍图像渐变以及如何使用OpenCV的cv2.Sobel计算Sobel渐 ...

  2. Python,OpenCV图像金字塔cv2.pyrUp(), cv2.pyrDown()

    Python,OpenCV图像金字塔cv2.pyrUp, cv2.pyrDown 1. 效果图 2. 原理 2.1 什么是图像金字塔 2.2 金字塔分类 2.3 应用 3. 源码 参考 这篇博客将介绍 ...

  3. OpenCV图像缩放插值之BiCubic双三次插值

    图像缩放算法简介 在图像的仿射变换中,很多地方需要用到插值运算,常见的插值运算包括最邻近插值,双线性插值,双三次插值(立体插值),兰索思插值等方法,OpenCV提供了很多方法,其中,双线性插值由于折中 ...

  4. python皮同_Python OpenCV 图像的双线性插值算法,全网最细致的算法说明_橡皮擦,一个逗趣的互联网高级网虫-CSDN博客...

    原文作者:梦想橡皮擦 原文标题:Python OpenCV 图像的双线性插值算法,全网最细致的算法说明 发布时间:2021-02-17 20:55:32 Python OpenCV 365 天学习计划 ...

  5. OpenCV 图像加载和显示

    OpenCV 图像加载和显示 OpenCV 图像加载和显示 加载图像(使用cv :: imread) 创建一个名为OpenCV的窗口(使用cv :: namedWindow) 在OpenCV窗口中显示 ...

  6. OpenCV图像坐标系与行列宽高的关系

    这篇文章挺好    OpenCV图像坐标系与行列宽高的关系 图片坐标系,与从小到大见到的xy坐标系,x轴方向相同,只是y轴方向相反.

  7. python使用openCV图像加载(转化为灰度图像)、Canny边缘检测器检测图像的边缘(Detect Edges)

    python使用openCV图像加载(转化为灰度图像).Canny边缘检测器检测图像的边缘(Detect Edges) 目录

  8. python使用openCV图像加载(转化为灰度图像)、使用filter2D函数对图像进行锐化(Sharpen Images)

    python使用openCV图像加载(转化为灰度图像).使用filter2D函数对图像进行锐化(Sharpen Images) 目录

  9. python opencv 图像膨胀

    python opencv 图像膨胀 代码: import cv2 import numpy as np # 图像膨胀 def dilate_img(img,a,iterations):kernel ...

  10. python opencv 图像旋转

    python opencv 图像旋转 原图 顺时针旋转 代码: import cv2 path = '2.jpg' img = cv2.imread(path,1) trans_img = cv2.t ...

最新文章

  1. 概率模型与条件随机场
  2. Mysql 重做日志及与二进制日志的区别
  3. cocos2d-x3.2创建项目
  4. dubbo protocol port 消费者端_Dubbo源码:搞定URL,就走完了进度条的一半
  5. 去年互联网普及率首次过半 42.7%网民遭遇过网络安全问题
  6. 我的成长笔记20210325(一天写了247条用例)
  7. Flink+Hudi 构架湖仓一体化解决方案
  8. Python爬虫爬取豆瓣图书的信息和封面,放入MySQL数据库中。
  9. c 程序设计语言简单列子,C语言程序设计实例大全(220个例子)
  10. Linux7系统克隆到另一个硬盘,Ubuntu14.04 dd命令克隆系统镜像安装到另一台机器上...
  11. 中科大网上财务报销填写流程
  12. Win10 VS2015编译CuraEngine
  13. 如何解决万能地图下载器下载的地图和选择范围不一致
  14. python裂缝检测_基于卷积神经网络的高楼外墙裂缝检测系统
  15. Esper学习之十:EPL语法(六)
  16. 应该担心什么不应该关心什么(做正确的事,把事情做对)
  17. linux普通账户变为管理员,你就可以将普通账户升级为管理员账户了
  18. YDOOK :Pycharm 专业版下载安装 :官网直接下载安装 详细教程
  19. Android加载GIF图片的两种方式
  20. CHM格式文件无法打开的解决方法。

热门文章

  1. 国内最火5款Java微服务开源项目
  2. 使用Linux curl命令获取本机公网IP地址
  3. C语言,利用求余运算拆分三位数的个,十,百位数字,并求和
  4. Chrome TTFB中英文解释
  5. MySQL详细安装(windows)
  6. C语言 最大公约数和最小公倍数计算
  7. Windows/Linux服务器上Tomcat开启远程调试,使用IDEA本地调试
  8. 【C语言】用指针作为形参完成数据的升序排列
  9. C#LeetCode刷题之#633-平方数之和( Sum of Square Numbers)
  10. junit进行单元测试_通过JUnit规则轻松进行AppEngine单元测试