zoukankan      html  css  js  c++  java
  • opencv入门踩坑之路(一)

    因为找了个实验室搬砖,所以我开始学opencv和pytorch了

    嘿嘿嘿,感觉记录踩过的坑会很有意思嘻嘻嘻

    首先是安装opencv,这个贼简单,我用的win10

    直接命令行 pip install opencv-python,如果需要安装特定版本,可以pip install opencv-python==版本号,但是直接用默认安装最新版,它不香吗?

    接下来测试一下是否成功

     版本号出来就说明成功啦

    接下来跑第一个demo

     这个demo的作用是显示一张图片

    from cv2 import cv2 as cv
    #print(cv.__version__)
    # 读取图片 参数1:图片路径, 参数2:读取的方式 
    img = cv.imread('d:/butterfly.jpg',cv.IMREAD_COLOR)
    # 显示窗口 参数1:窗口名称, 参数2:图片数据
    cv.imshow("src",img)
    # 让程序处于等待推出状态
    cv.waitKey(0)
    # 当程序推出时,释放所有窗口资源
    cv.destroyAllWindows()

    运行之后图片就出来了

     (当初用matlab画的黄油飞嘿嘿嘿)

    因为我是在vscode上写的,它会蜜汁报错告诉我cv2这个函数也没有那个函数也没有,虽然能跑,但是看起来贼难受,所以加了from cv2

    当然要是偷懒完全可以直接import cv2,但是不觉得cv看起来更顺眼?

    这里我碰到了第一个坑:图片路径不能有中文!

     如果图片路径有中文的话,它会报这个错误:

     error:(-215:Assertion failed)size.width>0 && size.height >0 in function 'cv::imshow'

    还有人说必须要用绝对路径,我试了试,好像相对路径确实不行。。。但是看到有博主用相对路径完成了,咱也不知道为什么,就先凑合着用绝对路径吧

    (不得不吐槽一句,这个报错信息真的令人费解,光看字面意思根本不知道在干嘛。。。让我想起了我写的垃圾编译器。。。)

    接下来第二个demo

     这个demo是把图片写入到磁盘中,据说还可以直接在内存中构建一张图片,以后就会了嘿嘿嘿

    from cv2 import cv2 as cv
    img = cv.imread("d:/butterfly.jpg", cv.IMREAD_UNCHANGED)
    
    # 将图片写入到磁盘中,参数1: 图片写入路径,参数2: 图片数据
    cv.imwrite("d:/butterfly_copy.jpg",img)
    
    cv.waitKey(0)
    cv.destroyAllWindows()

    d盘就多出一个bufferfly_copy.jpg

    接下来打算跑跑别的。。。但是,等我写完C0,考完OS再说吧,呜呜呜滚了

  • 相关阅读:
    UltraEdit语法高亮解决办法
    tcpdump命令格式及使用
    VS tricks
    git ready
    [FirefoxPlugin]Print pages to Pdf
    Searching and Navigating Code in VS 2010 (VS 2010 and .NET 4.0 Series)
    How to avoid StepInto unnecessary code area?
    Search and Navigation Tips/Tricks with Visual Studio
    squashing commits with rebase
    【原创】钻石继承与虚继承
  • 原文地址:https://www.cnblogs.com/PineZhuo/p/12149827.html
Copyright © 2011-2022 走看看