1.读取图片

import cv2

img = cv2.imread('./test.jpg')

读取出来的图片是numpy.ndarray格式,值是0~255, img的形状是 (图片高度,图片宽度,图片通道数),打印值出来发现通道的顺序是BGR,而不是RGB。

2.改变图片大小

import cv2

width = 100
height = 200 img = cv2.imread('./test.jpg') img = cv2.resize(img,(width, height),interpolation=cv2.INTER_AREA) cv2.imshow('', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

这个进行大小变换时,需要把指定的图片宽度放在前面,图片高度放在后面,和img的形状大小顺序不一致。

3.灰度转换

import cv2

img = cv2.imread('./test.jpg')

img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

转换后形状为 (图片高度,图片宽度)

其他一些转换:

import cv2

img = cv2.imread('./test.jpg')

img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

img_bgr = cv2.cvtColor(img_gray, cv2.COLOR_GRAY2BGR)

img_bgr2 = cv2.cvtColor(img, cv2.COLOR_RGB2BGR)

img_rgb = cv2.cvtColor(img_gray, cv2.COLOR_GRAY2RGB)

4.保存图片

import cv2

width = 100
height = 200 img = cv2.imread('./test.jpg') img = cv2.resize(img,(width, height),interpolation=cv2.INTER_AREA) cv2.imwrite('test_changed.png', img)

如何自己实现cv2? 参考:http://www.cnblogs.com/huangshiyu13/p/8475559.html

Python之cv2的更多相关文章

  1. python import cv2 出错:cv2.x86_64-linux-gnu.so: undefined symbol

    之前写过一个python使用opencv处理图片的脚本,当时是可以使用的,现在突然发现执行时出错: ImportError: /usr/lib/python2.7/dist-packages/cv2. ...

  2. python 安装cv2

    问题描述:import cv2 报错提示未安装此包. 解决措施: 1.cmd框中输入pip install cv2,若安装成功,则恭喜你一次性成功,如提示"无法找到与你当前版本的匹配&quo ...

  3. Ubuntu16.04 python import cv2

    有些项目源代码里面需要导入cv2,没有安装的话会出现ImportError: No module named cv2. 下面给出如何在ubuntu下安装cv2: 直接在ternimal终端中输入命令: ...

  4. Python中cv2库和matplotlib库色彩空间排布不一致

    今天在python中读如图片时发现以下问题: 1.在from matplotlib import pyplot as plt之后,再import cv2 cv2.imshow()不能正常使用,还不知道 ...

  5. python import cv2异常(dll load fail / windows server 2008)

    最近服务器迁移,从得win7系统迁移到云服务器器上的windows server2008系统,迁移过程中安装Python的opencv一直出错,不管是用whl安装或者是在线pip安装都报错,尝试打包成 ...

  6. python PIL/cv2/base64相互转换

    PIL和cv2是python中两个常用的图像处理库,PIL一般是anaconda自带的,cv2是opencv的python版本.base64在网络传输图片的时候经常用到. ##PIL读取.保存图片方法 ...

  7. ubuntu python opencv3 cv2.cv2 has no attribute 'face' 'cv2.face' has no attribute 'createEigenFaceRecognizer'

    学习opencv过程中遇到错误: 1  cv2.cv2 has no attribute 'face' 经过一顿查,,,各种走弯路 最后一下子就解决了: pip install opencv-pyth ...

  8. python调用cv2.findContours时报错:ValueError: not enough values to unpack (expected 3, got 2)

    OpenCV旧版,返回三个参数: im2, contours, hierarchy = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_S ...

  9. python 解决cv2绘制中文乱码

    因为使用cv2.putText() 只能显示英文字符,中文会出现乱码问题, 因此使用PIL在图片上绘制添加中文,可以指定字体文件. 大体思路: OpenCV图片格式转换成PIL的图片格式: 使用PIL ...

随机推荐

  1. android源码编译-Mac 10.11 xcode5.1.1

    第一步: 参考官网:创建一个dmg,大小80g,这个要尽量大一点,40g感觉不够用:http://source.android.com/source/initializing.html 第二步:下载a ...

  2. 数据库存储引擎 show engines 修改引擎

    mysql> show engines; +--------------------+---------+-------------------------------------------- ...

  3. FFmpeg(9)-解码器解码代码演示(FFmpeg调用MediaCodec实现硬解码、多线程解码、及音视频解码性能测试)

    一.AVFrame 用来存放解码后的数据. [相关函数] AVFrame *frame = av_frame_alloc();                       // 空间分配,分配一个空间 ...

  4. FFmpeg编译:jni not found 的问题

    进入Android\Sdk\ndk-bundle\platforms\android-xx\arch-arm\usr目录查看发现与Google官方下载的NDK相比缺少include目录 此目录下包含各 ...

  5. 动态SQL中 实现条件参数 varchar类型的参数名称 以及模糊查询实现

    set @strSQL='select * from testtable AS P WHERE P.Type='+@PType+' and P.PName ='''+@PName+''' and P. ...

  6. (原创)用c++11打造好用的variant

    variant类似于union,它能代表定义的多种类型,允许将不同类型的值赋给它.它的具体类型是在初始化赋值时确定.boost中的variant的基本用法: typedef variant<in ...

  7. Asp.Net MVC Areas区域说明

    一般网站分为前台+会员后台+管理员后台,做过webform的人都会把会员后台页面放在user中,把管理员后台页面放在admin中 会员后台访问:www.xxx.com/user/xxx.aspx 管理 ...

  8. tf.nn.sigmoid_cross_entropy_with_logits

    tf.nn.sigmoid_cross_entropy_with_logits sigmoid_cross_entropy_with_logits( _sentinel=None, labels=No ...

  9. iOS开发:一个瀑布流的设计与实现(已实现缓存池功能,该功能使得瀑布流cell可以循环利用)

    一个瀑布流的实现有三种方式: 继承自UIScrollView,仿写UITableView的dataSource和delegate,创造一个缓存池用来实现循环利用cell 写多个UITableview( ...

  10. shell脚本输出带颜色字体

    #!/bin/bash # #下面是字体输出颜色及终端格式控制 #字体色范围:30-37 echo -e "\033[30m 黑色字 \033[0m" echo -e " ...