在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

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

新機器視覺 ? 來源:QbitAI ? 作者:量子位 ? 2021-04-14 14:46 ? 次閱讀

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

圖像平移

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

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

Step2. 創建一個平移矩陣,這一步需要借助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. 創建一個旋轉函數,定義圖像img、旋轉角度angle和旋轉點rotPoint。

Step2. 利用cv.getRotationMatrix2D()(矩陣旋轉與縮放)創建一個旋轉矩陣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(區域插值)、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不僅發布了這篇教程,還分享了用于基本和高級圖像處理的OpenCV速查表,感興趣的朋友可以通過下方鏈接查看。
編輯:lyn

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

    關注

    31

    文章

    635

    瀏覽量

    41594
  • 圖像平移
    +關注

    關注

    0

    文章

    2

    瀏覽量

    5403

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

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

收藏 人收藏

    評論

    相關推薦

    使用Python+OpenCV處理圖片

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

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

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

    Minitab 數據清理與預處理技巧

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

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

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

    C55x CSL音頻預處理

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

    opencv-python和opencv一樣嗎

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

    opencv的主要功能有哪些

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

    知識圖譜與大模型之間的關系

    在人工智能的廣闊領域中,知識圖譜與大模型是兩個至關重要的概念,它們各自擁有獨特的優勢和應用場景,同時又相互補充,共同推動著人工智能技術的發展。本文將從定義、特點、應用及相互關系等方面深入探討知識圖譜與大模型之間的關系。
    的頭像 發表于 07-10 11:39 ?1256次閱讀

    機器學習中的數據預處理與特征工程

    在機器學習的整個流程中,數據預處理與特征工程是兩個至關重要的步驟。它們直接決定了模型的輸入質量,進而影響模型的訓練效果和泛化能力。本文將從數據預處理和特征工程的基本概念出發,詳細探討這兩個步驟的具體內容、方法及其在機器學習中的應用。
    的頭像 發表于 07-09 15:57 ?609次閱讀

    信號的預處理包括哪些環節

    信號預處理是信號處理的一個重要環節,它對信號進行一系列的操作,以便于后續的分析和處理。信號預處理的目的是提高信號的質量,減少噪聲,保留有用的信息,以及滿足后續
    的頭像 發表于 06-03 10:35 ?3570次閱讀

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

    如題,我在使用v4l2-ctl和opencv的時候,打開攝像頭保存是可以,但是保存出來的圖片都很有問題 比如 或者圖片上半部分是被壓扁的不知道什么色彩的圖片,下面全是灰色 我嘗試過用
    發表于 05-30 06:16

    常見的醫學圖像讀取方式和預處理方法

    基于深度學習做醫學圖像數據分析,例如病灶檢測、腫瘤或者器官分割等任務,第一步就是要對數據有一個大概的認識。但是我剛剛入門醫學圖像分割的時候,很迷茫不知道自己該干啥,不知道需要準備哪些知識,慢慢到現在才建立了一個簡陋的知識體系。
    發表于 04-19 11:43 ?1018次閱讀
    常見的醫學圖像讀取方式和<b class='flag-5'>預處理</b>方法

    C語言中的預處理

    所有的預處理器命令都是以井號(#)開頭。它必須是第一個非空字符,為了增強可讀性,預處理器指令應從第一列開始。
    發表于 03-01 12:16 ?1002次閱讀
    C語言中的<b class='flag-5'>預處理</b>器

    利用知識圖譜與Llama-Index技術構建大模型驅動的RAG系統(下)

    對于語言模型(LLM)幻覺,知識圖譜被證明優于向量數據庫。知識圖譜提供更準確、多樣化、有趣、邏輯和一致的信息,減少了LLM中出現幻覺的可能性。
    的頭像 發表于 02-22 14:13 ?1327次閱讀
    利用<b class='flag-5'>知識圖</b>譜與Llama-Index技術構建大模型驅動的RAG系統(下)

    OpenCV入門:了解與安裝指南

    OpenCV致力于高效運算和即時應用開發。因其是用優化的C/C++編寫的,故其可以充分利用多核處理優勢。 并且還啟用了OpenSL,它可以利用底層異構計算平臺的硬件加速。
    的頭像 發表于 02-21 14:26 ?661次閱讀
    <b class='flag-5'>OpenCV</b><b class='flag-5'>入門</b>:了解與安裝指南
    主站蜘蛛池模板: 国产午夜视频在线观看网站 | 欧美精品久久久久久久小说 | 日本永久免费 | 色爱综合网 | 国产情侣草莓视频在线 | 六月婷婷精品视频在线观看 | 综合五月 | 久久久久久91精品色婷婷 | 色多多在线播放 | 色色色色网站 | 在线精品一区二区三区 | 五月花亚洲 | 婷婷五月色综合香五月 | 久久久精品免费观看 | 1000部禁片黄的免费看 | 五月亭亭六月丁香 | 午夜高清免费在线观看 | 97人人视频 | 免费一级毛片无毒不卡 | 日本三级成人中文字幕乱码 | 国产精品福利久久 | 朱元璋传奇1998王耿豪版 | 日韩在线一区视频 | 啪啪网视频 | 毛片高清一区二区三区 | 亚洲国产综合视频 | 国产handjob手交在线播放 | 亚洲4区 | 天天舔天天干天天操 | 一级毛片美国一级j毛片不卡 | 天天摸天天做天天爽 | 在线观看s色 | 新版天堂中文在线8官网 | 2014天堂| 黄视频网站在线看 | 奇米欧美 | 婷婷色影院 | 1024 cc香蕉在线观看看中文 | 黄 色 片免费观看 | 亚洲国产午夜精品理论片的软件 | 久久综合九色综合欧美播 |