一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺談Python中的opencv

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2021-04-12 16:36 ? 次閱讀

經(jīng)典機(jī)器學(xué)習(xí)深度學(xué)習(xí),當(dāng)下這些熱門的詞匯不知不覺在我們學(xué)習(xí)(diaosi)氛圍濃重的大學(xué)蔓延開來,作為與計(jì)算機(jī)專業(yè)毫不相干的,指揮摁下開機(jī)鍵,點(diǎn)開穿越火線嫻熟地操作wasd的我而言,當(dāng)周圍人討論opencv,tensorflow,sklearn這些玄幻詞匯時,聽得我是一頭霧水。今天,重拾一年前敲擊hello world的自信,開啟了Python的opencv生涯。

壹 為什么選擇python?

作為時下最時尚的python語言,簡潔的代碼,借助于向軍火庫一般的各種開源工具包,你可以完成你想做的任何事。數(shù)值計(jì)算這些numpy,scipy,數(shù)據(jù)分析工具pandas,可視化matplotlib,可以使得非計(jì)算機(jī)工科生甚至文科生輕松上手,爬取處理數(shù)據(jù)。作為膠水語言的python在opencv上的應(yīng)用不僅簡單方便編寫代碼,其運(yùn)行速度有時甚至優(yōu)于c++等,讓你更加專注于目標(biāo)而不是語法結(jié)構(gòu)。最重要的是,如果你已經(jīng)下載過了anaconda python,安裝opencv只需要一行代碼就可完成!

貳 掌握anaconda和安裝opencv

anaconda是用于科學(xué)計(jì)算的免費(fèi)的python版本??梢栽诠倬W(wǎng)上下載anaconda,https://www.anaconda.com/,選擇windows還是linux或是蘋果的mac os??辞宄?2位還是64位便可以下載。不過,下載數(shù)小時,經(jīng)常下載不成功是常事。這時候,強(qiáng)烈建議逛一逛清華或者中科大的鏡像站,下載變成分分鐘的事。

opencv的安裝:在網(wǎng)頁上下載好對應(yīng)版本的.whl文件后,打開你電腦的命令行,pip install一下就ok了。

叁 常見圖片的格式

作為圖像處理,那就需要知道常見的圖片格式有哪些。

比較老的有bmp格式,bmp格式無損及沒有壓縮像素,但麻煩的是圖片的體積偏大。

接著是jpg格式或者是jpeg格式,這是有損壓縮的模式,將像素信息用jpeg保存成文件再讀取出來。這個是我比較常處理的,用最少的磁盤空間得到最好的圖片質(zhì)量。

還有是png格式,是一種無損壓縮模式,用的是行程編碼算法,相比jpeg,更加適合存儲幾何特征比較強(qiáng)的圖片。

我們在空間搞笑圖片中常看見的GIF格式圖片,是多幀圖像的集合。我們處理讀取時也要一幀一幀讀。通過調(diào)節(jié)參數(shù)也可以控制顯示快慢。

我們常說的黑白圖像,在計(jì)算機(jī)中有兩種。一種是位圖模式,是真真切切的非黑即白,這種圖像只有一位深度:0就是純黑,1就是純白。

還有一種圖像叫灰度圖像,在生活中我們常把灰度圖像作為黑白圖像。事實(shí)上,灰度圖像有8位深度,(0,0,0,0,0,0,0,0)是純黑,(1,1,1,1,1,1,1,1)是純白,其余介于1至255之間的就是不同深度的灰度圖像。

彩色圖像就是RGB圖像,顧名思義,RED,GREEN,BLUE,這三種色彩疊加組合可以構(gòu)成我們?nèi)搜劭吹降娜魏晤伾?,在?jì)算機(jī)處理彩色圖像時,也是通過紅綠藍(lán)三個通道來進(jìn)行,每個通道又各有八個深度,由此,我們知道,理論上計(jì)算機(jī)可以構(gòu)成256的三次方種顏色!

肆 色彩空間轉(zhuǎn)換

hsv顏色模型更接近人感覺顏色的方式,H是色相,S是飽和度,V是亮度。

lab色彩空間:L:整張圖的亮度,a和b表示顏色多少,用于編碼顏色。

opencv提供了上百種顏色空間轉(zhuǎn)換方法,opencv做轉(zhuǎn)化時,用到了cvtColor函數(shù)。

該函數(shù)用兩個參數(shù)足以,第一個是圖像名稱,第二個是轉(zhuǎn)換方式。

例如,我已經(jīng)讀入一個函數(shù),

img = cv2.imread(path,way),

其中path是路徑,way是讀入方式,灰度圖,彩色圖還是加載alpha通道。

接著, gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 這就完成了彩色圖像與灰度圖像之間的轉(zhuǎn)化。

其中,cv2.COLOR_BGR2GRAY這個方式,如果轉(zhuǎn)化后還想要csv,就cv2.COLOR_BGR2CSV,如果想變更通道順序,那么cv2.COLOR_BGR2RGB就可以了,很好玩。

圖像縮放用cv2.resize函數(shù),例如變成400*400像素記得寫成cv2.resize(img,(400,400))。同樣如果想x方向縮小直接fx=0.5即可。

此外,圖像反轉(zhuǎn),圖像保存,閾值化處理等也被opencv包裝成了函數(shù),用起來也十分方便。
編輯:lyn

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • OpenCV
    +關(guān)注

    關(guān)注

    31

    文章

    642

    瀏覽量

    42273
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4822

    瀏覽量

    85895

原文標(biāo)題:淺淺淺淺談opencv

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何用OpenCV的相機(jī)捕捉視頻進(jìn)行人臉檢測--基于米爾NXP i.MX93開發(fā)板

    攝像頭)1、安裝python3-opencvaptinstallpython3-opencv(左右移動查看全部內(nèi)容)2、查看攝像頭支持的格式與分辨率root@debi
    的頭像 發(fā)表于 04-15 11:51 ?193次閱讀
    如何用<b class='flag-5'>OpenCV</b>的相機(jī)捕捉視頻進(jìn)行人臉檢測--基于米爾NXP i.MX93開發(fā)板

    OpenVINO?工具套件使用CRNN_CS模型運(yùn)行OpenCV* text_detection.cpp報錯怎么解決?

    將 crnn_cs.onnx 文本識別模型轉(zhuǎn)換為中間表示 (IR): python mo.py --input_model crnn_cs.onnx 使用生成的 IR 文件運(yùn)行 OpenCV
    發(fā)表于 03-05 09:19

    無法在Windows Subsystem for Linux 2上使用對象檢測Python演示運(yùn)行YoloV4模型?

    在 WSL2 上運(yùn)行對象檢測 python 演示。 使用 CPU 運(yùn)行 object_detection_demo.py 時遇到錯誤: OpenCV: FFMPEG: tag
    發(fā)表于 03-05 08:43

    【AI實(shí)戰(zhàn)項(xiàng)目】基于OpenCV的“顏色識別項(xiàng)目”完整操作過程

    OpenCV是一個廣受歡迎且極為流行的計(jì)算機(jī)視覺庫,它因其強(qiáng)大的功能、靈活性和開源特性而在開發(fā)者和研究者備受青睞。學(xué)習(xí)OpenCV主要就是學(xué)習(xí)里面的計(jì)算機(jī)視覺算法。要學(xué)習(xí)這些算法的原理,知道它們
    的頭像 發(fā)表于 12-09 16:42 ?1079次閱讀
    【AI實(shí)戰(zhàn)項(xiàng)目】基于<b class='flag-5'>OpenCV</b>的“顏色識別項(xiàng)目”完整操作過程

    RK3568 + OpenCV 會碰撞出什么火花?案例詳解:2-1 基于OpenCV的畫線實(shí)驗(yàn)

    一系列 C 函數(shù)和少量 C++ 類構(gòu)成,同時提供了Python、Ruby、MATLAB等語言的接口,實(shí)現(xiàn)了圖像處理和計(jì)算機(jī)視覺方面的很多通用算法。 OpenCV具有以下特點(diǎn): 不管是科學(xué)研究,還是商業(yè)
    發(fā)表于 12-03 14:09

    一個月速成python+OpenCV圖像處理

    OpenCV是一個廣受歡迎且極為流行的計(jì)算機(jī)視覺庫,它因其強(qiáng)大的功能、靈活性和開源特性而在開發(fā)者和研究者備受青睞。學(xué)習(xí)OpenCV主要就是學(xué)習(xí)里面的計(jì)算機(jī)視覺算法。要學(xué)習(xí)這些算法的原理,知道它們
    的頭像 發(fā)表于 11-29 18:27 ?347次閱讀
    一個月速成<b class='flag-5'>python+OpenCV</b>圖像處理

    如何用OpenCV的相機(jī)捕捉視頻進(jìn)行人臉檢測--基于米爾NXP i.MX93開發(fā)板

    提供了一個非常簡單的接口,用于相機(jī)捕捉一個視頻(我用的電腦內(nèi)置攝像頭) 1、安裝python3-opencv apt install python3-opencv 2、查看攝像頭支持的格式與分辨率
    發(fā)表于 11-15 17:58

    手寫圖像模板匹配算法在OpenCV的實(shí)現(xiàn)

    OpenCV的模板匹配是支持基于NCC相似度查找的,但是不是很好用,一個主要的原因是查找最大閾值,只能匹配一個,自己比對閾值,又導(dǎo)致無法正確設(shè)定閾值范圍,所以問題很多。于是我重新寫了純Python版本的NCC圖像模板匹配的代碼
    的頭像 發(fā)表于 11-11 10:12 ?595次閱讀
    手寫圖像模板匹配算法在<b class='flag-5'>OpenCV</b><b class='flag-5'>中</b>的實(shí)現(xiàn)

    基于OPENCV的相機(jī)捕捉視頻進(jìn)行人臉檢測--米爾NXP i.MX93開發(fā)板

    攝像頭)1、安裝python3-opencvaptinstallpython3-opencv2、查看攝像頭支持的格式與分辨率root@de
    的頭像 發(fā)表于 11-07 09:03 ?1355次閱讀
    基于<b class='flag-5'>OPENCV</b>的相機(jī)捕捉視頻進(jìn)行人臉檢測--米爾NXP i.MX93開發(fā)板

    Python在AI的應(yīng)用實(shí)例

    Python在人工智能(AI)領(lǐng)域的應(yīng)用極為廣泛且深入,從基礎(chǔ)的數(shù)據(jù)處理、模型訓(xùn)練到高級的應(yīng)用部署,Python都扮演著至關(guān)重要的角色。以下將詳細(xì)探討Python在AI的幾個關(guān)鍵應(yīng)用
    的頭像 發(fā)表于 07-19 17:16 ?2147次閱讀

    OpenCV圖像識別C++代碼

    安裝OpenCV庫 首先,您需要在您的計(jì)算機(jī)上安裝OpenCV庫。您可以從OpenCV官網(wǎng)下載預(yù)編譯的庫或從源代碼編譯。安裝完成后,確保將OpenCV的頭文件和庫文件添加到您的項(xiàng)目中。
    的頭像 發(fā)表于 07-16 10:42 ?3515次閱讀

    opencv-pythonopencv一樣嗎

    不一樣。OpenCV(Open Source Computer Vision Library)是一個開源的計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV-Python
    的頭像 發(fā)表于 07-16 10:38 ?1811次閱讀

    嵌入式學(xué)習(xí)-飛凌ElfBoard ELF 1板卡 - 如何在Ubuntu編譯OpenCV

    在之前發(fā)布的文章探討了交叉編譯OpenCV并部署至嵌入式系統(tǒng)的方法。然而,在調(diào)試階段,我們發(fā)現(xiàn)在 Ubuntu 環(huán)境下將 OpenCV 編譯為 X86 架構(gòu)可能更加方便和高效。 通過在主機(jī)上編譯并
    發(fā)表于 06-07 09:21

    ELF 1技術(shù)貼|如何在Ubuntu編譯OpenCV

    在之前發(fā)布的文章探討了交叉編譯OpenCV并部署至嵌入式系統(tǒng)的方法。然而,在調(diào)試階段,我們發(fā)現(xiàn)在Ubuntu環(huán)境下將OpenCV編譯為X86架構(gòu)可能更加方便和高效。通過在主機(jī)上編譯并使用X86架構(gòu)
    的頭像 發(fā)表于 05-31 16:41 ?1339次閱讀
    ELF 1技術(shù)貼|如何在Ubuntu<b class='flag-5'>中</b>編譯<b class='flag-5'>OpenCV</b>庫

    STM32MP135如何使用opencv-python或v4l2-ctl打開攝像頭,并保存為圖片?

    行。 但是官方的例程,直接用v4l推送到media上,直接顯示的又是可以的。 請問我該如何使用opencv-python 或v4l2-ctl打開攝像頭,并保存為圖片?
    發(fā)表于 05-30 06:16