问答详情

python里面cv是什么意思

209次观看
标签: python cv
老师回答

OpenCV(Open Source Computer Vision Library)开放源代码计算机视觉库,主要算法涉及图像处理、计算机视觉和机器学习相关方法。OpenCV 其实就是一堆 C 和 C++语言的源代码文件,这些源代码文件中实现了许多常用的计算机视觉算法。

OpenCV由一系列C函数和C++类构成,它有C,C++,Python和java接口,当前SDK(Software Development Kit软件开发工具包) 已经支持C++、Java、Python等语言应用开发, 当前OpenCV本身新开发的算法和模块接口都是基于C++产生。

其覆盖了工业产品检测、医学成像、无人机飞行、无人驾驶、安防、 卫星地图与电子地图拼接、信息安全、用户界面、摄像机标定、立体视觉和机器人等计算机视觉应用领域。

图像处理(Image Processing)是用计算机对图像进行分析,以达到所需结果的技术。图像处理技术一般包括图像压缩,增强和复原,匹配、描述和识别3个部分。数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。

计算机视觉(Computer Vision)是指用摄像机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使之成为更适合人眼观察或仪器检测图像的一门学科。

cv模块相当于OpenCV在python上一个包,下面一段程序用到了cap = cv.VideoCapture(fn)

ret,frame = cap.read()读取视频数据和cv.imwrite存取图片数据。

def save_img(dname, fn, i, frame):
    cv.imwrite('{}/{}_{}_{}.png'.format(
        out_dir, os.path.basename(dname),
        os.path.basename(fn).split('.')[0], i), frame)
 
out_dir = 'E:/images'
if not os.path.exists(out_dir):
    os.makedirs(out_dir)
for dname in sorted(glob.glob('E:/毕设/数据集/datasize caltech/set*')):
    for fn in sorted(glob.glob('{}/*.seq'.format(dname))):
        cap = cv.VideoCapture(fn)
        i = 0
        m=0;
        while True:
            ret,frame = cap.read()
            if not ret:
                break
            save_img(dname, fn, i, frame)
            i += 1
        print(fn)

众多python培训视频,尽在python学习网,欢迎在线学习!

免费直播

    精选课程
    相关推荐
    python中sort()和sorted()使用有什么区别?
    付老师 Python编程

    python中有两种列表排序的方法,即sort() 和sorted() 。这两个方法看起来很像,但是有很大的差别。sort() 修改原列表,永久性排序,无返回值,内存消耗小,而sorted() 保持原列表不变,临时性排序,有返回值,内存消耗大。本文向大家详解这二者使用的区别。

    一、sort() 

    1、定义:python列表的一个内置的排序方法,只是列表的一个方法,只适用于列表;

    2、作用:作用于列表,直接修改原有列表,无返回值;

    3、排序时间:对列表进行永久性排序;

    4、内存消耗:无需保存原对象,节省内存空间。

    5、使用实例:

    list_name = [1, 3, 4, -0.2200222, -4.66]
    list_name.sort()
    print(list_name)

    输出

    [-4.66, -0.2200222, 1, 3, 4]
    原列表的值发生变化,原列表被修改

    二、sorted() 

    1、定义:python内置的一个排序函数,接受一切迭代器,返回一个有序的副本,并且类型总是列表;

    2、作用:作用于任意可迭代的对象,原有列表保持不变,会返回一个排序后的列表。

    3、排序时间:对列表进行临时排序。

    4、内存消耗:返回新对象,所以耗费较多资源。

    5、使用实例:

    list_name = [1, 3, 4, -0.2200222, -4.66]
    list_name_new = sorted(list_name)
    print(list_name)
    print(list_name_new)

    输出

    [1, 3, 4, -0.2200222, -4.66] 原列表
    [-4.66, -0.2200222, 1, 3, 4] 排序后的列表

    相比于sort(),sorted() 使用的范围更为广泛,但是sort()消耗内存比较小,效率也比较高。所以如果不需要保留原列表,sort更有效一点哦~

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司