最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

AI與Python計算機視覺教程

 更新時間:2022年05月23日 11:12:11   作者:weixin_42238387  
這篇文章主要為大家介紹了AI與Python計算機視覺教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

計算機視覺涉及使用計算機軟件和硬件建模和復制人類視覺。在本章中,您將詳細了解這一點。

計算機視覺

計算機視覺是一門學科,根據(jù)場景中存在的結構的屬性,研究如何從其2d圖像重建,中斷和理解3d場景。

計算機視覺層次結構

計算機視覺分為以下三個基本類別 -

  • 低級視覺 - 它包括用于特征提取的過程圖像。
  • 中級視覺 - 包括物體識別和3D場景解釋
  • 高級視覺 - 包括活動,意圖和行為等場景的概念性描述。

計算機視覺與圖像處理

圖像處理研究圖像到圖像的變換。圖像處理的輸入和輸出都是圖像。

計算機視覺是從圖像中構建對物理對象的明確,有意義的描述。計算機視覺的輸出是對3D場景中的結構的描述或解釋。

應用

計算機視覺在以下領域中得到應用 -

機器人

  • 本地化 - 自動確定機器人位置
  • 導航
  • 障礙避免
  • 裝配(掛孔,焊接,噴漆)
  • 操縱(例如PUMA機器人操縱器)
  • 人機交互(HRI):與人交互和服務的智能機器人

醫(yī)學

  • 分類和檢測(例如病變或細胞分類和腫瘤檢測)
  • 2D / 3D分割
  • 3D人體器官重建(MRI或超聲)
  • 視覺引導機器人手術

安全

生物識別技術(虹膜,指紋,面部識別)

監(jiān)視 - 檢測某些可疑活動或行為

運輸

自動駕駛汽車安全性,例如駕駛員警惕監(jiān)控 工業(yè)自動化應用 工業(yè)檢查(缺陷檢測)部件條形碼和包裝標簽閱讀對象排序文件理解(例如OCR)

安裝有用的包

對于使用Python的計算機視覺,您可以使用名為OpenCV(開源計算機視覺)的流行庫。它是一個編程功能庫,主要針對實時計算機視覺。它是用C ++編寫的,其主要接口是用C ++編寫的。您可以借助以下命令安裝此軟件包 -

pip install opencv_python-X.X-cp36-cp36m-winX.whl

這里X代表您機器上安裝的Python版本以及您擁有的win32或64位。

如果您使用的是anaconda環(huán)境,請使用以下命令安裝OpenCV -

conda install -c conda-forge opencv

閱讀,寫作和顯示圖像

大多數(shù)CV應用程序需要將圖像作為輸入并將圖像作為輸出生成。在本節(jié)中,您將學習如何借助OpenCV提供的功能讀取和寫入圖像文件。

OpenCV函數(shù)用于讀取,顯示,寫入圖像文件

OpenCV為此提供以下功能 -

  • imread()函數(shù) - 這是讀取圖像的函數(shù)。OpenCV imread()支持各種圖像格式,如PNG,JPEG,JPG,TIFF等。
  • imshow()函數(shù) - 這是在窗口中顯示圖像的功能。窗口自動適合圖像大小。OpenCV imshow()支持各種圖像格式,如PNG,JPEG,JPG,TIFF等。
  • imwrite()函數(shù) - 這是寫入圖像的函數(shù)。OpenCV imwrite()支持各種圖像格式,如PNG,JPEG,JPG,TIFF等。

示例

此示例顯示了用于以一種格式讀取圖像的Python代碼 - 在窗口中顯示它并以其他格式寫入相同的圖像??紤]以下步驟 -

如圖所示導入OpenCV包 -

import cv2

現(xiàn)在,要讀取特定圖像,請使用imread()函數(shù) -

image = cv2.imread('image_flower.jpg')

要顯示圖像,請使用imshow()函數(shù)。您可以在其中查看圖像的窗口名稱為image_flower。

cv2.imshow('image_flower',image)cv2.destroyAllwindows()

現(xiàn)在,我們可以使用imwrite()函數(shù)將相同的圖像寫入另一種格式,例如.png -

cv2.imwrite('image_flower.png',image)

輸出True表示圖像已成功寫入.png文件也位于同一文件夾中。

True

注意 - 函數(shù)destroyallWindows()只是破壞我們創(chuàng)建的所有窗口。

色彩空間轉換

在OpenCV中,圖像不是使用傳統(tǒng)的RGB顏色存儲的,而是以相反的順序存儲,即以BGR順序存儲。因此,讀取圖像時的默認顏色代碼是BGR。所述cvtColor()中的圖像從一個顏色代碼轉換為其他顏色轉換功能。

考慮此示例將圖像從BGR轉換為灰度。

如圖所示導入OpenCV包 -

import cv2

現(xiàn)在,要讀取特定圖像,請使用imread()函數(shù) -

image = cv2.imread('image_flower.jpg')

現(xiàn)在,如果我們使用imshow()函數(shù)看到這個圖像,那么我們可以看到這個圖像在BGR中。

cv2.imshow('BGR_Penguins',image)

現(xiàn)在,使用cvtColor()函數(shù)將此圖像轉換為灰度。

image = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
cv2.imshow('gray_penguins',image)

邊緣檢測

人們在看到粗略的草圖后,可以很容易地識別出許多物體類型和姿勢。這就是邊緣在人類生活以及計算機視覺應用中發(fā)揮重要作用的原因。OpenCV提供了一個非常簡單有用的函數(shù)Canny()來檢測邊緣。

以下示例顯示了邊緣的清晰標識。

導入OpenCV包如圖所示 -

import cv2import numpy as np

現(xiàn)在,要讀取特定圖像,請使用imread()函數(shù)。

image = cv2.imread('Penguins.jpg')

現(xiàn)在,使用Canny()函數(shù)檢測已讀取圖像的邊緣。

cv2.imwrite(‘edges_Penguins.jpg',cv2.Canny(image,200,300))

現(xiàn)在,要顯示帶邊的圖像,請使用imshow()函數(shù)。

cv2.imshow(‘edges', cv2.imread(‘‘edges_Penguins.jpg'))

這個Python程序將使用邊緣檢測創(chuàng)建一個名為edges_penguins.jpg的圖像。

人臉檢測

人臉檢測是計算機視覺的迷人應用之一,使其更加真實和未來。OpenCV具有執(zhí)行面部檢測的內(nèi)置工具。我們將使用Haar級聯(lián)分類器進行人臉檢測。

哈爾Cascade數(shù)據(jù)

我們需要數(shù)據(jù)來使用Haar級聯(lián)分類器。您可以在我們的OpenCV包中找到這些數(shù)據(jù)。安裝OpenCv后,您可以看到文件夾名稱haarcascades。不同的應用程序會有.xml文件?,F(xiàn)在,將它們?nèi)繌椭埔怨┎煌褂?,然后粘貼到當前項目下的新文件夾中。

以下是使用Haar Cascade檢測Amitabh Bachan面部的Python代碼,如下圖所示 -

如圖所示導入OpenCV包 -

import cv2
import numpy as np

現(xiàn)在,使用HaarCascadeClassifier檢測面部 -

face_detection=
cv2.CascadeClassifier('D:/ProgramData/cascadeclassifier/
haarcascade_frontalface_default.xml')

現(xiàn)在,要讀取特定圖像,請使用imread()函數(shù) -

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

現(xiàn)在,將其轉換為灰度,因為它會接受灰色圖像 -

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

現(xiàn)在,使用face_detection.detectMultiScale,執(zhí)行實際的面部檢測

faces = face_detection.detectMultiScale(gray, 1.3, 5)

現(xiàn)在,在整個臉部周圍畫一個矩形 -

for (x,y,w,h) in faces:
   img = cv2.rectangle(img,(x,y),(x+w, y+h),(255,0,0),3)
cv2.imwrite('Face_AB.jpg',img)

這個Python程序將使用面部檢測創(chuàng)建一個名為Face_AB.jpg的圖像,如圖所示

眼睛檢測

眼睛檢測是計算機視覺的另一個迷人應用,它使其更加真實和未來。OpenCV有一個內(nèi)置的工具來執(zhí)行眼睛檢測。我們將使用Haar級聯(lián)分類器進行眼睛檢測。

以下示例給出了使用Haar Cascade檢測Amitabh Bachan面部的Python代碼,如下圖所示 -

導入OpenCV包如圖所示 -

import cv2import numpy as np

現(xiàn)在,使用HaarCascadeClassifier檢測面部 -

eye_cascade = cv2.CascadeClassifier('D:/ProgramData/cascadeclassifier/haarcascade_eye.xml')

現(xiàn)在,要讀取特定圖像,請使用imread()函數(shù)

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

現(xiàn)在,將其轉換為灰度,因為它會接受灰色圖像 -

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

現(xiàn)在借助eye_cascade.detectMultiScale,執(zhí)行實際的人臉檢測

eyes = eye_cascade.detectMultiScale(gray, 1.03, 5)

現(xiàn)在,在整個臉部周圍畫一個矩形 -

for (ex,ey,ew,eh) in eyes:
   img = cv2.rectangle(img,(ex,ey),(ex+ew, ey+eh),(0,255,0),2)
cv2.imwrite('Eye_AB.jpg',img)

這個Python程序將創(chuàng)建一個名為Eye_AB.jpg的圖像,其中帶有眼睛檢測,如圖所示 -

以上就是AI與Python計算機視覺教程的詳細內(nèi)容,更多關于AI Python計算機視覺的資料請關注腳本之家其它相關文章!

相關文章

最新評論

安新县| 仙桃市| 深水埗区| 潮州市| 阿鲁科尔沁旗| 保康县| 万州区| 邳州市| 平原县| 旬阳县| 赤峰市| 额尔古纳市| 定南县| 淄博市| 灌阳县| 广水市| 邹城市| 齐河县| 枣庄市| 瑞昌市| 东辽县| 临猗县| 柯坪县| 客服| 内丘县| 肥乡县| 斗六市| 阿拉善左旗| 临猗县| 和静县| 永州市| 正镶白旗| 额尔古纳市| 轮台县| 谷城县| 临猗县| 邵阳县| 满洲里市| 同仁县| 二连浩特市| 自治县|