python-opencv问题程序事例

本文介绍了Python编程中遇到的中文编码问题,包括SyntaxError和在Windows到Linux迁移时的编码错误,提供了解决方案。同时,详细讲解了OpenCV在图像处理中的应用,如图像读取模式、边缘检测、轮廓检测、阈值处理和颜色空间转换等基本操作,附带多个示例代码。
摘要由CSDN通过智能技术生成

问题
【现象1】
在编写Python时,当使用中文输出或注释时运行脚本,会提示错误信息:
SyntaxError: Non-ASCII character ‘\xe5’ in file *******
【原因】
python的默认编码文件是用的ASCII码,而你的python文件中使用了中文等非英语字符。
【解决办法】
在Python源文件的最开始一行,加入一句:

coding=UTF-8(等号换为”:“也可以)

或者

-- coding:UTF-8 --

【现象2】
问题描述:一个在Django框架下使用Python编写的定时更新项目,在Windows系统下测试无误,在Linux系统下测试,报如下错误:
ascii codec can’t decode byte 0xe8 in position 0:ordinal not in range(128)
【原因】
在Windows系统转Linux系统时,字符问题很容易出现。
【解决办法】
在出现问题的页加上如下三行即可:
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8’)

程序
【程序1】

# coding=UTF-8
import cv2
import numpy as np

img = np.zeros((3, 3), dtype = np.uint8)    # 通过二维NumPy数组来简单创建一个黑色的正方形图像
print(img)                        # 在控制台打印该图像
print(img.shape)     # 通过shape属性来查看图像的结构,返回行和列,如果有一个以上的通道,还会返回通道数
img = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR)    # 利用cv2.cvtColor函数将该图像转换成BGR格式
print(img)
print(img.shape)
cv2.namedWindow("Image")                    # 显示该图像
cv2.imshow("Image", img)#cv2.waitKey (0)        #保持屏幕
image = cv2.imread('flower.jpg')      # 重新读取新图片flower,将‘flower.jpg’的图片与.py文件放在同一目录下,或者使用绝对路径
cv2.imwrite('flower.png',image)       #保存为另一种格式png
cv2.namedWindow("flower")             # 显示该图像
cv2.imshow("flower", image)
cv2.waitKey (0)

在默认情况下,即使图像文件为灰度格式,imread()函数也会返回BGR格式的图像,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值