Python之cv2
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的更多相关文章
- python import cv2 出错:cv2.x86_64-linux-gnu.so: undefined symbol
之前写过一个python使用opencv处理图片的脚本,当时是可以使用的,现在突然发现执行时出错: ImportError: /usr/lib/python2.7/dist-packages/cv2. ...
- python 安装cv2
问题描述:import cv2 报错提示未安装此包. 解决措施: 1.cmd框中输入pip install cv2,若安装成功,则恭喜你一次性成功,如提示"无法找到与你当前版本的匹配&quo ...
- Ubuntu16.04 python import cv2
有些项目源代码里面需要导入cv2,没有安装的话会出现ImportError: No module named cv2. 下面给出如何在ubuntu下安装cv2: 直接在ternimal终端中输入命令: ...
- Python中cv2库和matplotlib库色彩空间排布不一致
今天在python中读如图片时发现以下问题: 1.在from matplotlib import pyplot as plt之后,再import cv2 cv2.imshow()不能正常使用,还不知道 ...
- python import cv2异常(dll load fail / windows server 2008)
最近服务器迁移,从得win7系统迁移到云服务器器上的windows server2008系统,迁移过程中安装Python的opencv一直出错,不管是用whl安装或者是在线pip安装都报错,尝试打包成 ...
- python PIL/cv2/base64相互转换
PIL和cv2是python中两个常用的图像处理库,PIL一般是anaconda自带的,cv2是opencv的python版本.base64在网络传输图片的时候经常用到. ##PIL读取.保存图片方法 ...
- 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 ...
- 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 ...
- python 解决cv2绘制中文乱码
因为使用cv2.putText() 只能显示英文字符,中文会出现乱码问题, 因此使用PIL在图片上绘制添加中文,可以指定字体文件. 大体思路: OpenCV图片格式转换成PIL的图片格式: 使用PIL ...
随机推荐
- android源码编译-Mac 10.11 xcode5.1.1
第一步: 参考官网:创建一个dmg,大小80g,这个要尽量大一点,40g感觉不够用:http://source.android.com/source/initializing.html 第二步:下载a ...
- 数据库存储引擎 show engines 修改引擎
mysql> show engines; +--------------------+---------+-------------------------------------------- ...
- FFmpeg(9)-解码器解码代码演示(FFmpeg调用MediaCodec实现硬解码、多线程解码、及音视频解码性能测试)
一.AVFrame 用来存放解码后的数据. [相关函数] AVFrame *frame = av_frame_alloc(); // 空间分配,分配一个空间 ...
- FFmpeg编译:jni not found 的问题
进入Android\Sdk\ndk-bundle\platforms\android-xx\arch-arm\usr目录查看发现与Google官方下载的NDK相比缺少include目录 此目录下包含各 ...
- 动态SQL中 实现条件参数 varchar类型的参数名称 以及模糊查询实现
set @strSQL='select * from testtable AS P WHERE P.Type='+@PType+' and P.PName ='''+@PName+''' and P. ...
- (原创)用c++11打造好用的variant
variant类似于union,它能代表定义的多种类型,允许将不同类型的值赋给它.它的具体类型是在初始化赋值时确定.boost中的variant的基本用法: typedef variant<in ...
- Asp.Net MVC Areas区域说明
一般网站分为前台+会员后台+管理员后台,做过webform的人都会把会员后台页面放在user中,把管理员后台页面放在admin中 会员后台访问:www.xxx.com/user/xxx.aspx 管理 ...
- tf.nn.sigmoid_cross_entropy_with_logits
tf.nn.sigmoid_cross_entropy_with_logits sigmoid_cross_entropy_with_logits( _sentinel=None, labels=No ...
- iOS开发:一个瀑布流的设计与实现(已实现缓存池功能,该功能使得瀑布流cell可以循环利用)
一个瀑布流的实现有三种方式: 继承自UIScrollView,仿写UITableView的dataSource和delegate,创造一个缓存池用来实现循环利用cell 写多个UITableview( ...
- shell脚本输出带颜色字体
#!/bin/bash # #下面是字体输出颜色及终端格式控制 #字体色范围:30-37 echo -e "\033[30m 黑色字 \033[0m" echo -e " ...