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

from PIL import Image
import numpy as np

def imread(filename):
    return np.array(Image.open(filename))[:,:,::-1]

原文地址:https://www.cnblogs.com/huangshiyu13/p/8474616.html

时间: 2024-09-29 02:27:44

Python之cv2的相关文章

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

今天在python中读如图片时发现以下问题: 1.在from matplotlib import pyplot as plt之后,再import cv2 cv2.imshow()不能正常使用,还不知道是什么原因 目前我的解决办法是,使用cv2读入图像,然后调用plt.imshow()显示图像,不使用cv2.imshow()显示图像 2.OpenCV的cv2库中的色彩空间和matplotlib库中的色彩空间的排布方式是不一样的 cv2中的色彩排列是(b,g,r),而matplotlib库中的排列方

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-python pip install opencv0-contrib-python 这俩装完了就行了 2  'cv2.face' has no attribute 'createEigenFaceRecognizer' 这个错误 查完了人家让你看文档,很无聊, opencv改接口了 现在用 cv2.face

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

最近服务器迁移,从得win7系统迁移到云服务器器上的windows server2008系统,迁移过程中安装Python的opencv一直出错,不管是用whl安装或者是在线pip安装都报错,尝试打包成exe也是同样,提示dll load fail.(如果你刚好也是cv2报错dll load fail,而且也是windows server系统,受这个问题困扰,可以接着往下看) 问题应该就是dll缺失,但具体怎么缺失一时半会找不到.这时候就得咨询百度.谷歌了,百度了一轮,发现有类似的情况,但没发现具

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_SIMPLE) 要想返回三个参数: 把OpenCV 降级成3.4.3.18 就可以了,在终端输入pip install opencv-python==3.4.3.18 OpenCV 新版调用,返回两个参数: contours, hierarchy = cv2.findContours(mask, cv

python 安装 cv2 和 numpy

pip install opencv-python

RPi 2B python opencv camera demo example

/************************************************************************************** * RPi 2B python opencv camera demo example * 声明: * 本文主要记录RPi 2B 使用python opencv来获取图片的方式. * * 2016-2-24 深圳 南山平山村 曾剑锋 **********************************************

如何查看Python对象的属性

在Python语言中,有些库在使用时,在网络上找到的文档不全,这就需要查看相应的Python对象是否包含需要的函数或常量.下面介绍一下,如何查看Python对象中包含哪些属性,如成员函数.变量等,其中这里的Python对象指的是类.模块.实例等包含元素比较多的对象.这里以OpenCV2的Python包cv2为例,进行说明. 由于OpenCV是采用C/C++语言实现,并没有把所有函数和变量打包,供Python用户调用,而且有时网络上也找不到相应文档:还有OpenCV还存在两个版本:OpenCV2和

python 使用记录

1. python 加载 caffe mean.binaryproto #### mean_file #### proto_data = open(mean_filename, "rb").read() a = caffe.io.caffe_pb2.BlobProto.FromString(proto_data) mean = caffe.io.blobproto_to_array(a)[0] 2. python 加载caffe 图片输入 #### load input and con

CentOS7配置opencv for python && eclipse c/c++

1, 卸载安装过程中有瑕疵的 opencv    删除/usr/local/lib 和/usr/local/include/中的所有带 opencv 字眼的    # rm -rf /usr/local/lib/libopencv*    # rm -rf /usr/local/include/opencv*    之后重新编译 2, 安装 ffmpeg    安装 ffmpeg,直接 yum 显示没有 ffmpeg 软件包(因为与 centos7 相应的 epel, rpmforge 包正式版