99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

詳解OpenCV入門知識(shí)圖片預(yù)處理

新機(jī)器視覺(jué) ? 來(lái)源:QbitAI ? 作者:量子位 ? 2021-04-14 14:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

OpenCV是一個(gè)跨平臺(tái)計(jì)算機(jī)視覺(jué)機(jī)器學(xué)習(xí)算法庫(kù)。它不僅能用來(lái)實(shí)現(xiàn)各種復(fù)雜的算法,還能夠?qū)D像進(jìn)行預(yù)處理:包括圖像的平移、旋轉(zhuǎn)、縮放、翻轉(zhuǎn)、裁剪。希望把這些知識(shí)分享給初學(xué)者。

圖像平移

我們使用OpenCV提供的仿射變換函數(shù)cv.warpAffine()沿x和y軸移動(dòng)圖像。

Step1. 調(diào)用一個(gè)函數(shù)cv.warpAffine()。

Step2. 創(chuàng)建一個(gè)平移矩陣,這一步需要借助NumPy進(jìn)行。

Step3. 將img(需要變換的圖像)、transMAT(平移矩陣)和Dimensions(維度)代入仿射變換函數(shù)cv.warpAffine(),輸入x和y以確定平移多少。

向左、向上移動(dòng),則x、y設(shè)為負(fù)數(shù),反之則為正數(shù)。

Step4. 采用cv.imshow()函數(shù)顯示圖像。

## Translation

def translation(img,x,y):

tranMAT = np.float32([[1,0,x],[0,1,y]])

dimensions = (img.shape[1],img.shape[0])

return cv.warpAffine(img,transMAT,dimensions)

translated = translation(img,-100,100)

cv.imshow(“Translated”,translated)

cv.waitKey(0)

圖像旋轉(zhuǎn)

在OpenCV中旋轉(zhuǎn)圖像,可以將任何點(diǎn)用作旋轉(zhuǎn)的中心,同樣使用cv.warpAffine()函數(shù)以及和上面相同的參數(shù)。但是旋轉(zhuǎn)矩陣與圖像平移是不同的。

Step1. 創(chuàng)建一個(gè)旋轉(zhuǎn)函數(shù),定義圖像img、旋轉(zhuǎn)角度angle和旋轉(zhuǎn)點(diǎn)rotPoint。

Step2. 利用cv.getRotationMatrix2D()(矩陣旋轉(zhuǎn)與縮放)創(chuàng)建一個(gè)旋轉(zhuǎn)矩陣rotMAT,其中包括旋轉(zhuǎn)點(diǎn)、旋轉(zhuǎn)角度和比例因子。如果不需要比例因子,則將其設(shè)為1.0。

Step3. 輸入旋轉(zhuǎn)角度、旋轉(zhuǎn)點(diǎn)對(duì)應(yīng)數(shù)值。(如不需要設(shè)置旋轉(zhuǎn)點(diǎn),則在Step1中設(shè)為空值None)

## Rotation

def rotate(img,angle,rotPoint=None):

(height,width) = img,shape[:2]

if rotPoint is None:

rotPoint = (width//2,height//2)

rotMAT = cv.getRotationMatrix2D(rotPoint,angle,1.0)

dimension = (width,height)

return cv.warpAffine(img,rotMat,dimension)

rotated = rotated(img,20)

cv.imshow(“Rotated”,rotated)

cv.waitKey(0)

圖片縮放

在OpenCV中需要用到函數(shù)cv.resize(img, (500, 500), interpolation=cv.INTER_LINEAR)。

根據(jù)縮小或放大圖像的需要,參數(shù)指定插值方法可以選擇cv.INTER_AREA(區(qū)域插值)、cv.INTER_CUBIC(三次樣條插值)、cv.INTER_LINEAR(線性插值)。

如需放大圖像,可以采用《》 INTER_LINEAR(效率較高)或INTER_CUBIC(效率較低);

如需縮小圖像,可以采用《》 INTER_AREA。

## Resize

resized = cv.resize(img(500,500),interpolation=cv.INTER_LINEAR)

cv.imshow(“resized”,resized)

cv.waitKey(0)

圖片翻轉(zhuǎn)

使用OpenCV中的cv.flip()函數(shù),該函數(shù)支持圖像的翻轉(zhuǎn)(垂直翻轉(zhuǎn)、水平翻轉(zhuǎn),以及同時(shí)翻轉(zhuǎn)均可)。

cv.flip(img,flipcode)翻轉(zhuǎn)模式有三種:0為垂直翻轉(zhuǎn),1為水平翻轉(zhuǎn),-1 為兩個(gè)方向同時(shí)翻轉(zhuǎn)。

## Flipping

flipped = cv.flip(img,0)

cv.imshow(“Flipped”,flipped)

cv.waitKey(0)

圖像裁剪

運(yùn)用Cropped = image[a1:a2,b1:b2] 裁剪圖像img得到一個(gè)矩形,高度從a1到a2,寬度從b1到b2。

## Cropping

cropped = img[100:200,100:200]

cv.imshow(“Cropped”,cropped)

cv.waitKey(0)

除此之外,OpenCV還能用于空間顏色轉(zhuǎn)換、物體跟蹤、圖像分割、輪廓提取、結(jié)構(gòu)分析、人臉識(shí)別等,功能十分強(qiáng)大。

Raoof Naushad不僅發(fā)布了這篇教程,還分享了用于基本和高級(jí)圖像處理的OpenCV速查表,感興趣的朋友可以通過(guò)下方鏈接查看。
編輯:lyn

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

    關(guān)注

    32

    文章

    642

    瀏覽量

    42866
  • 圖像平移
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    5463

原文標(biāo)題:【OpenCV入門】手把手教你圖片預(yù)處理

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺(jué)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    輕輕松松學(xué)電工(識(shí)圖篇)

    內(nèi)容介紹 結(jié)合廣大電工人員的實(shí)際需要,主要介紹了常用電工電路識(shí)圖的基礎(chǔ)知識(shí)、方法及技巧,內(nèi)容包括常用電氣符號(hào)、電工識(shí)圖基本方法,以及識(shí)讀供配電系統(tǒng)圖、建筑電氣圖、電力拖動(dòng)系統(tǒng)電氣圖、PLC梯形圖
    發(fā)表于 04-30 17:18

    典型電路原理、電路識(shí)圖入門到精通等資料

    1、電路識(shí)圖入門到精通高清電子資料 由淺入深地介紹了電路圖的基礎(chǔ)知識(shí)、典型單元電路的識(shí)圖方法,通過(guò)“入門篇”和“精通篇”循序漸進(jìn)、由淺入深
    的頭像 發(fā)表于 04-15 15:53 ?6786次閱讀
    典型電路原理、電路<b class='flag-5'>識(shí)圖</b>從<b class='flag-5'>入門</b>到精通等資料

    每周推薦!電子工程師必學(xué)!典型電路原理、電路識(shí)圖入門到精通等資料

    1、 電路識(shí)圖入門到精通高清電子資料 由淺入深地介紹了電路圖的基礎(chǔ)知識(shí)、典型單元電路的識(shí)圖方法,通過(guò)“入門篇”和“精通篇”循序漸進(jìn)、由淺入
    發(fā)表于 04-11 15:17

    電路識(shí)圖入門到精通高清電子資料

    由淺入深地介紹了電路圖的基礎(chǔ)知識(shí)、典型單元電路的識(shí)圖方法,通過(guò)“入門篇”和“精通篇”循序漸進(jìn)、由淺入深地介紹了電路圖的基礎(chǔ)知識(shí)、典型單元電路的識(shí)圖
    發(fā)表于 04-10 16:22

    FPGA Verilog HDL語(yǔ)法之編譯預(yù)處理

    Verilog HDL語(yǔ)言和C語(yǔ)言一樣也提供了編譯預(yù)處理的功能。“編譯預(yù)處理”是Verilog HDL編譯系統(tǒng)的一個(gè)組成部分。Verilog HDL語(yǔ)言允許在程序中使用幾種特殊的命令(它們不是一般
    的頭像 發(fā)表于 03-27 13:30 ?618次閱讀
    FPGA Verilog HDL語(yǔ)法之編譯<b class='flag-5'>預(yù)處理</b>

    如何確定在OpenVINO? Toolkit中預(yù)處理支持的輸入顏色格式?

    無(wú)法確定在 OpenVINO? Toolkit 中預(yù)處理支持的輸入顏色格式。
    發(fā)表于 03-06 07:28

    使用Python+OpenCV處理圖片

    如果給你一張圖片作為背景,另外一張圖片中的物體作為前景圖,要把前景圖中的物體疊加布置到背景圖的中間位置,并且前景圖中的物體需要在背景圖中有旋轉(zhuǎn)和投影,怎么處理?
    的頭像 發(fā)表于 12-23 15:54 ?841次閱讀

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

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

    Minitab 數(shù)據(jù)清理與預(yù)處理技巧

    Minitab是一款功能強(qiáng)大的統(tǒng)計(jì)分析和質(zhì)量管理軟件,在數(shù)據(jù)分析過(guò)程中,數(shù)據(jù)清理與預(yù)處理是至關(guān)重要的環(huán)節(jié)。以下是一些在Minitab中進(jìn)行數(shù)據(jù)清理與預(yù)處理的技巧: 一、數(shù)據(jù)導(dǎo)入與格式調(diào)整 導(dǎo)入數(shù)據(jù)
    的頭像 發(fā)表于 12-02 16:06 ?1548次閱讀

    三星自主研發(fā)知識(shí)圖譜技術(shù),強(qiáng)化Galaxy AI用戶體驗(yàn)與數(shù)據(jù)安全

    據(jù)外媒11月7日?qǐng)?bào)道,三星電子全球AI中心總監(jiān)Kim Dae-hyun近日透露,公司正致力于自主研發(fā)知識(shí)圖譜技術(shù),旨在進(jìn)一步優(yōu)化Galaxy AI的功能,提升其易用性,并加強(qiáng)用戶數(shù)據(jù)的隱私保護(hù)。
    的頭像 發(fā)表于 11-07 15:19 ?1377次閱讀

    基于ArkTS語(yǔ)言的OpenHarmony APP應(yīng)用開發(fā):圖片處理

    1、程序介紹本案例使用TextArea實(shí)現(xiàn)多文本輸入,使用mediaLibrary實(shí)現(xiàn)在相冊(cè)中獲取圖片,使用image生成pixelMap,使用pixelMap的scale(),crop
    的頭像 發(fā)表于 09-20 08:07 ?1316次閱讀
    基于ArkTS語(yǔ)言的OpenHarmony APP應(yīng)用開發(fā):<b class='flag-5'>圖片</b><b class='flag-5'>處理</b>

    C55x CSL音頻預(yù)處理

    電子發(fā)燒友網(wǎng)站提供《C55x CSL音頻預(yù)處理.pdf》資料免費(fèi)下載
    發(fā)表于 09-19 11:30 ?0次下載
    C55x CSL音頻<b class='flag-5'>預(yù)處理</b>

    16bit 6通道帶信號(hào)預(yù)處理的高速模數(shù)轉(zhuǎn)換器——AiP8348

    16bit 6通道帶信號(hào)預(yù)處理的高速模數(shù)轉(zhuǎn)換器——AiP8348
    的頭像 發(fā)表于 08-26 09:59 ?732次閱讀
    16bit 6通道帶信號(hào)<b class='flag-5'>預(yù)處理</b>的高速模數(shù)轉(zhuǎn)換器——AiP8348

    opencv-python和opencv一樣嗎

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

    opencv的主要功能有哪些

    OpenCV(Open Source Computer Vision Library)是一個(gè)開源的計(jì)算機(jī)視覺(jué)庫(kù),提供了大量的計(jì)算機(jī)視覺(jué)算法和工具。以下是OpenCV的主要功能: 圖像處理
    的頭像 發(fā)表于 07-16 10:35 ?2828次閱讀