成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

如何使用Python+OpenCV實(shí)現(xiàn)基本的圖像處理

89542767 / 615人閱讀


  小編寫這篇文章的主要目的,還是來給大家講解關(guān)于Python的一些實(shí)例,比如會涉及到一些機(jī)器學(xué)習(xí)的內(nèi)容,比如去處理基本的圖像,那么,它的一個操作步驟是什么呢?下面小編給大家做出一個詳細(xì)解答。


  今天小編給大家分析python中,關(guān)于機(jī)器學(xué)習(xí)的一些具體實(shí)例,如果我們來處理圖像的話,那么,都會用到opencv這個技術(shù)模塊。該模塊的組成,大致分為一下幾種類型。


  物體識別:通過視覺以及內(nèi)部存儲來進(jìn)行物體的判斷


  圖像分割


  人臉識別


  汽車安全駕駛


  人機(jī)交互


  等等


  當(dāng)然這次小編并不打算將這么高深的內(nèi)容,今天就從最基本的opencv模塊在圖像的基本操作上說起


  模塊的安裝


  模塊的安裝我們通過都是通過pip命令來進(jìn)行的


  pip install opencv-python
  pip install opencv-contrib-python


  圖片的各種操作


  學(xué)過線性數(shù)學(xué)的話,我們對懟矩陣就不會有陌生的感覺。圖像在本質(zhì)來說,就是由一個一個的矩陣組成的,灰度圖像是一個普通的矩陣,而彩色圖像就是一個多維矩陣,我們對于圖像的操作可以自然地轉(zhuǎn)換成是對矩陣的操作


  讀取圖像


  首先我們先來讀取圖像,調(diào)用的是cv2.imread()方法,它的語法格式如下

  cv2.imread(filename,flag=1)


  其中的flag參數(shù)是用來設(shè)置讀取圖像的格式,默認(rèn)的是1,表示為按照RGB三通道的格式來進(jìn)行讀取,如果設(shè)置成0,則表示以灰度圖單通道的方式來進(jìn)行讀取,


  import cv2
  import numpy as np
  img=cv2.imread('1.jpg',0)


  展示圖像

  cv2.imshow(name,img)


  其參數(shù)解釋分別如下:


  name:表示的是展示窗口的名字


  img:圖片的矩陣形式


  我們嘗試將上面讀取的圖片展示出來,代碼如下


  cv2.imshow("grey_img",img)
  ##如果使用了cv2.imshow()函數(shù),下面一定要跟著一個摧毀窗口的函數(shù)
  cv2.destroyAllWindows()


  當(dāng)我們運(yùn)行了上述的代碼之后,可以發(fā)現(xiàn)在一瞬間當(dāng)中圖片彈了出來,但是還沒有等我們看清楚圖片的樣子之后就直接關(guān)閉了,原因在于cv2.imshow()函數(shù)方法并沒有延時的作用,我們添加一個延時的函數(shù),代碼如下


  import cv2
  import numpy as np
  img=cv2.imread('1.jpg')
  cv2.imshow("grey_img",img)
  cv2.waitKey(0)
  cv2.destroyAllWindows()

  output

01.png

  圖片保存


  最后我們將圖片保存下來,這里用到的函數(shù)是cv2.imwrite(),它的語法格式如下

  cv2.imwrite(imgname,img)


  其參數(shù)解釋分別如下:


  imgname:要保存的圖片的名字


  img:圖片的矩陣形式


  示例代碼如下


  import cv2
  import numpy as np
  img=cv2.imread('1.jpg')
  cv2.imshow("grey_img",img)
  cv2.waitKey(0)
  cv2.imwrite('1.png',img)
  cv2.destroyAllWindows()


  圖片的各種屬性


  有時候我們想要知道圖片的像素大小,而圖片的本質(zhì)是矩陣,例如一張1024像素*960像素的圖片,就意味著在矩陣當(dāng)中的行數(shù)就是960行,列數(shù)是1024列,在opencv模塊當(dāng)中調(diào)用的shape()函數(shù)方法,代碼如下


  import cv2
  img=cv2.imread('1.jpg')
  print(img.shape[0])#行數(shù)
  print(img.shape[1])#列數(shù)
  print(img.shape[2])#通道數(shù)


  output


  308


  340


  3


  可以看到該圖片的像素是340*380,通道數(shù)是3,而針對灰度圖像而言,我們來看一下圖片的屬性,代碼如下


  img=cv2.imread('1_grey.png',0)
  print(img.shape)


  output


  (308,340)


  可以看到對于灰度圖像而言,我們就沒有看到通道數(shù),只有行數(shù)和列數(shù)


  圖像的基本操作


  最后我們來對圖像進(jìn)行一些基本操作,無非就是改變當(dāng)中的一些像素值,我們導(dǎo)入一張空白的圖片,通過修改當(dāng)中的像素值來往里面添加一個黑點(diǎn),代碼如下


  import cv2
  import numpy as np

  img=cv2.imread('2.jpg')


  (x,y,z)=img.shape


  for i in range(-10,10):


  for j in range(-10,10):


  #圖片的正中心的位置來改變像素值,


  img[int(x/2)+i,int(y/2)+j]=(0,0,0)


  cv2.imshow("img",img)


  cv2.waitKey(0)


  cv2.destroyAllWindows()


  output

02.png

  綜上所述,關(guān)于python+opencv就為大家介紹到這里了,希望能給帶來更多的幫助。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/127996.html

相關(guān)文章

  • OpenCV-Python,計(jì)算機(jī)視覺開發(fā)利器

    摘要:而這其中,很多應(yīng)用都涉及到計(jì)算機(jī)視覺這樣一個細(xì)分領(lǐng)域。常見的圖像處理灰度圖二值化平滑邊緣提取這幾種都屬于數(shù)字圖像處理的常用方法。對這方面知識感興趣的,可以找本數(shù)字圖像處理的相關(guān)教材系統(tǒng)地看一遍,了解數(shù)字圖像處理的基礎(chǔ)。 人工智能 ,一個已經(jīng)被談?wù)摿藥资甑母拍睿ㄗ钤缡?圖靈 在 1950年 提出)。如今這幾年,相關(guān)技術(shù)的發(fā)展速度是越來越快。高大上如無人駕駛、智能安防、AI輔助診斷,接地...

    阿羅 評論0 收藏0
  • Python十大圖像處理工具

    摘要:之成為圖像處理任務(wù)的最佳選擇,是因?yàn)檫@一科學(xué)編程語言日益普及,并且其自身免費(fèi)提供許多最先進(jìn)的圖像處理工具。該庫包含基本的圖像處理功能,包括點(diǎn)操作使用一組內(nèi)置卷積內(nèi)核進(jìn)行過濾以及顏色空間轉(zhuǎn)換。圖像處理系統(tǒng)有時被稱為圖像處理的瑞士軍刀。 showImg(https://segmentfault.com/img/remote/1460000019442221);編譯:張秋玥、小七、蔣寶尚 本...

    yuanxin 評論0 收藏0
  • 首次公開,整理12年積累博客收藏夾,零距離展示《收藏夾吃灰》系列博客

    摘要:時間永遠(yuǎn)都過得那么快,一晃從年注冊,到現(xiàn)在已經(jīng)過去了年那些被我藏在收藏夾吃灰的文章,已經(jīng)太多了,是時候把他們整理一下了。那是因?yàn)槭詹貖A太亂,橡皮擦給設(shè)置私密了,不收拾不好看呀。 ...

    Harriet666 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<