在实战的第二篇文章里,我们来学习一点计算机视觉(computer vision)中稍微基础的东西,同时也是比较重要的东西,简单的来说,计算机视觉就是研究如何让计算机模拟人的眼睛去观察世界的,最终的目的是,人类眼睛能做到的,计算机也能做到,人类眼睛做不到的,尽量让计算机做到,在人类眼睛的观察力等能力的基础上,尽可能的超越人类眼睛的准确度,观察力等能力,例如,模糊图像变高清图像,模糊视频变高清视频,人脸识别,植物识别,物件识别,等等。。。

    一、opencv图像读取

    由于自然界中,我们获取的图片可能是不清晰的,局部模糊的,因此,我们需要做一些处理,这样才能为我们所用,首先,我们来读取一张图片,然后进行处理,下面请看代码示例,注释很简单,希望大家能够看懂。

# -*- coding:utf-8 -*-
import cv2 as cv           # 导入计算机视觉库函数包 opencv
img = cv.imread("./1.jpg")  # read函数读取图像
# 这个地方可以加入对图像的各种处理
cv.namedWindow("Image")      # 打开一个窗口用来显示图像
cv.imshow("Image", img)      # 正式显示图像
cv.waitKey(0)                # 参数为0ms,此时图像一直显示,直到有任意键输入程序往下运行
cv.destroyAllWindows()      # 程序运行结束,关闭所有窗口
print("程序运行结束!")

 程序运行结果:

python 视频修改分辨率 python读取视频分辨率_计算机视觉

                                 

                                可以看到 读取图像显示成功!

二、视频读取

    与图像一样,视频读取其实也是按照一张张图像进行读取,并进行进一步处理的。下面请看代码示例:

    

# -*- coding:utf-8 -*-
import cv2
cap = cv2.VideoCapture('test01.mp4')
slow_time = 200
while(cap.isOpened()):
    ret, frame = cap.read()           # 循环读取视频图像
    cv2.namedWindow("resized",0);
    cv2.resizeWindow("resized", 640, 480)  # 设置窗口大小
    cv2.imshow('resized',frame)            # 显示图喜爱那个
    if cv2.waitKey(slow_time) & 0xFF == ord('q'):    # 放慢时间 此处为200,一般设置为25毫秒
        break
cap.release()
cv2.destroyAllWindows()

    运行结果:

python 视频修改分辨率 python读取视频分辨率_显示图像_02

通过以上代码,可以看到视频的每一张图片,这样就就可以做后续处理了。