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

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

詳解OpenCV入門知識圖片預處理

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

掃碼添加小助手

加入工程師交流群

OpenCV是一個跨平臺計算機視覺機器學習算法庫。它不僅能用來實現(xiàn)各種復雜的算法,還能夠對圖像進行預處理:包括圖像的平移、旋轉、縮放、翻轉、裁剪。希望把這些知識分享給初學者。

圖像平移

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

Step1. 調用一個函數cv.warpAffine()。

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

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

向左、向上移動,則x、y設為負數,反之則為正數。

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

## 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)

圖像旋轉

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

Step1. 創(chuàng)建一個旋轉函數,定義圖像img、旋轉角度angle和旋轉點rotPoint。

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

Step3. 輸入旋轉角度、旋轉點對應數值。(如不需要設置旋轉點,則在Step1中設為空值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中需要用到函數cv.resize(img, (500, 500), interpolation=cv.INTER_LINEAR)。

根據縮小或放大圖像的需要,參數指定插值方法可以選擇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)

圖片翻轉

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

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

## Flipping

flipped = cv.flip(img,0)

cv.imshow(“Flipped”,flipped)

cv.waitKey(0)

圖像裁剪

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

## Cropping

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

cv.imshow(“Cropped”,cropped)

cv.waitKey(0)

除此之外,OpenCV還能用于空間顏色轉換、物體跟蹤、圖像分割、輪廓提取、結構分析、人臉識別等,功能十分強大。

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

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

    關注

    32

    文章

    642

    瀏覽量

    42889
  • 圖像平移
    +關注

    關注

    0

    文章

    2

    瀏覽量

    5463

原文標題:【OpenCV入門】手把手教你圖片預處理

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    家電電路識圖自學手冊

    家電電路識圖自學手冊
    發(fā)表于 07-11 15:49 ?0次下載

    輕輕松松學電工(識圖篇)

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

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

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

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

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

    電路識圖入門到精通高清電子資料

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

    FPGA Verilog HDL語法之編譯預處理

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

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

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

    使用Python+OpenCV處理圖片

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

    RK3568 + OpenCV 會碰撞出什么火花?案例詳解:2-1 基于OpenCV的畫線實驗

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

    Minitab 數據清理與預處理技巧

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

    三星自主研發(fā)知識圖譜技術,強化Galaxy AI用戶體驗與數據安全

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

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

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

    C55x CSL音頻預處理

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

    16bit 6通道帶信號預處理的高速模數轉換器——AiP8348

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

    三星電子將收購英國知識圖譜技術初創(chuàng)企業(yè)

    在人工智能技術日新月異的今天,三星電子公司再次展現(xiàn)了其前瞻性的戰(zhàn)略布局與技術創(chuàng)新實力。近日,三星正式宣布完成了對英國領先的人工智能(AI)與知識圖譜技術初創(chuàng)企業(yè)Oxford Semantic Technologies的收購,此舉標志著三星在提升設備端AI能力、深化個性化用戶體驗方面邁出了重要一步。
    的頭像 發(fā)表于 07-18 14:46 ?766次閱讀