【计算机视觉 实验一 图像的基本操作】

【计算机视觉 实验一 图像的基本操作】实验软件Python、OpenCV、NumPy1.获取实验用图像:SuYiMing.jpeg.使用OpenCV的imread函数将图像读入,将图像转为灰度图像后另存为Lena.jpg文件,显示原图和灰度图。2.将lena.bmp.图像文件读入,在其左上角添加文字“OpenCVonLena”,显示运算前后图像。3.将A.bmp和B.bmp图像进行相减,显示运算前后图像,并分析其中颜色变化的原因。4.对lena.bmp图像做水平镜像,显示运算前后图像。5.将lena.bmp图像放大4倍,

一、实验目的

  1. 图像的打开、保存、显示;
  2. 图像上添加文字;
  3. 图像的减法运算;
  4. 图像的水平镜像;
  5. 图像的缩放;

实验软件
Python、OpenCV、NumPy

二、实验内容及要求

1.获取实验用图像:SuYiMing.jpeg.使用OpenCV的imread函数将图像读入,将图像转为灰度图像后另存为Lena.jpg文件,显示原图和灰度图。
2. 将lena.bmp.图像文件读入,在其左上角添加文字“OpenCV on Lena”, 显示运算前后图像。
3. 将A.bmp和B.bmp图像进行相减,显示运算前后图像,并分析其中颜色变化的原因。
4. 对lena.bmp图像做水平镜像,显示运算前后图像。
5. 将lena.bmp图像放大4倍,显示运算前后图像。

三、 实验程序

实验内容1:图像的打开、保存、显示

%实验1:图像的打开、保存、显示

import cv2
import numpy as np
if __name__ == "__main__":
    img_path="SuYiMing.jpg"
    img = cv2.imread(img_path)
    #获取图片的宽和高
    width,height = img.shape[:2][::-1]
    #将图片缩小便于显示观看
    img_resize=cv2.resize(img,(int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC)
    cv2.imshow("img",img_resize)
    print("img_reisze shape:{}".format(np.shape(img_resize)))
    #将图片转为灰度图
    img_gray = cv2.cvtColor(img_resize,cv2.COLOR_RGB2GRAY)
    cv2.imwrite("Lena.jpg",img_gray)
    cv2.imshow("img_gray",img_gray)
    print("img_gray shape:{}".format(np.shape(img_gray)))
cv2.waitKey()

实验内容2:图像上添加文字

%实验2:图像上添加文字

from PIL import Image, ImageDraw, ImageFont
im02 = Image.open("lena.bmp")
draw = ImageDraw.Draw(im02)
ft = ImageFont.truetype("C:\\Windows\\Fonts\\simsun.ttc", 40)
draw.text((30,30), u"OpenCV on Lena",font=ft, fill='black')
im02.show()

实验内容3:图像的减法运算

%实验3:图像的减法运算

import cv2
img1=cv2.imread("A.bmp",flags=cv2.IMREAD_COLOR)
img2=cv2.imread("B.bmp",flags=cv2.IMREAD_COLOR)
cv2.imshow('A',img1)
cv2.imshow('B',img2)
sub=cv2.subtract(img1,img2)
cv2.imshow('sub',sub)
cv2.waiKey(0)
cv2.destroyALLWindows()

实验内容4:图像的水平镜像

%实验4:图像的水平镜像

import cv2
img=cv2.imread(“lena.bmp”,flags=cv2.IMREAD_COLOR)
cv2.imshow(‘lena’,img)
f=cv2.flip(img,1)# 水平翻转
#f2 = cv2.flip(img, 0) # 垂直翻转
#f3 = cv2.flip(img, -1) # 水平垂直翻转
cv2.imshow(‘flip’,f)
cv2.waitKey(0)
cv2.destroyALLWindows()

实验内容5:图像的缩放

%实验5:图像的缩放

import cv2
img=cv2.imread(“lena.bmp”,flags=cv2.IMREAD_COLOR)
cv2.imshow(‘lena’,img)
Res=cv2.resize(img,None,fx=4,fy=4,interpolation=cv2.INTER_CUBIC)
Cv2.imshow(‘res’,res)
Cv2.waitKey(0)
Cv2.destroyALLWindows()

四、实验结果记录

实验一的结果:
原图与灰度图如下:
在这里插入图片描述

实验二的结果:
在这里插入图片描述
实验三的结果:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
实验四的结果:
在这里插入图片描述
在这里插入图片描述
实验五的结果:
在这里插入图片描述

五、附实验用图片下载

1.csdn下载
2.百度网盘下载链接:https://pan.baidu.com/s/1KzEQdSirWtY07A2flk77NQ
提取码:3q6q

下一篇:计算机视觉 实验二 图像增强

今天的文章【计算机视觉 实验一 图像的基本操作】分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/31165.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注