欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python+opencv實現論文插圖局部放大并拼接效果

 更新時間:2021年10月09日 14:51:20   作者:聽、 風  
在做圖像數據標注時,很難一次就做到精準標注,如果目標比較小,即使微調也難以做到精準,所以就需要另外一個窗口對標注區(qū)域進行局部放大以方便微調,這篇文章主要給大家介紹了關于python+opencv實現論文插圖局部放大并拼接效果的相關資料,需要的朋友可以參考下

前言

在制作論文插圖時,有時要求將圖片的局部放大來展示細節(jié)內容,同時將放大圖拼接在原圖上以方便觀察對比。

當然直接利用電腦自帶的畫圖軟件或者別的軟件也可以很方便地實現,但是如果碰到多個算法處理一張圖片后多張圖片進行對比就不太方便了,這里主要貼一下 python 代碼的實現。

cv2.rectangle() 函數

cv2.rectangle(img, pt1, pt2, color, thickness ) 功能是在圖片上畫一個矩形框,沒有返回值。

參數列表:
img:圖片
pt1:長方形框左上角坐標
pt2:長方形框右下角坐標
color:字體顏色
thickness:字體粗細

示例

import cv2

image = cv2.imread('F://test.png')
pt1 = (10, 190)  # 長方形框左上角坐標
pt2 = (160, 270)  # 長方形框右下角坐標 
cv2.rectangle(image, pt1, pt2, (255, 0, 0), 5)
cv2.imshow('demo', image)

cv2.resize() 函數

cv2.resize(src, dsize) 功能是將圖片縮放為指定大小,返回值是改變后的圖片。

參數列表:
src: 輸入圖片
dsize:輸出圖片的尺寸

示例

import cv2

image = cv2.imread('F://test.png')
h, w = image.shape[0:2]
print(f'原來圖片的大小:{w}×{h}')

image = cv2.resize(image, (150, 300))
h, w = image.shape[0:2]
print(f'縮小后圖片的大?。簕w}×{h}')

np.hstack() 和 np.vstack() 函數

np.hstack((img1, img2, ···))np.vstack((img1, img2·, ···))。np.hstack()np.vstack() 是 numpy 提供的兩個矩陣拼接函數,顧名思義 np.hstack() 是水平方向拼接,np.vstack() 是垂直方向拼接。

參數列表
img1:第一個圖片
img2:第二個圖片
imgn:第 n 個圖片
要求:輸入圖片的行數或者列數相同

示例

import cv2
import numpy as np

image1 = cv2.imread('F://test.png')
image2 = cv2.resize(image1, (150, 300))
image3 = cv2.resize(image1, (550, 410))

image = np.hstack((image1, image2))
image = np.vstack((image, image3))

cv2.imshow('demo', image)

實現局部框定放大拼接

import cv2
import numpy as np

image = cv2.imread('F://test.png')
# 第一個局部放大圖
pt1 = (150, 70)  # 長方形框左上角坐標
pt2 = (250, 130)  # 長方形框右下角坐標
cv2.rectangle(image, pt1, pt2, (0, 0, 255), 2)
patch1 = image[70:130, 150:250, :]
patch1 = cv2.resize(patch1, (200, 120))
# 第二個局部放大圖
pt1 = (265, 70)  # 長方形框左上角坐標
pt2 = (365, 130)  # 長方形框右下角坐標
cv2.rectangle(image, pt1, pt2, (0, 255, 0), 2)
patch2 = image[70:130, 265:365, :]
patch2 = cv2.resize(patch2, (200, 120))
# 拼接
patch = np.hstack((patch1, patch2))
image = np.vstack((image, patch))
cv2.imshow('demo', image)
cv2.imwrite('F://test_result.png', image)

總結

到此這篇關于python+opencv實現論文插圖局部放大并拼接效果的文章就介紹到這了,更多相關python+opencv插圖局部放大并拼接內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python爬取某平臺短視頻的方法

    Python爬取某平臺短視頻的方法

    這篇文章主要介紹了Python爬取某平臺短視頻的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • python實現將html表格轉換成CSV文件的方法

    python實現將html表格轉換成CSV文件的方法

    這篇文章主要介紹了python實現將html表格轉換成CSV文件的方法,涉及Python操作csv文件的相關技巧,需要的朋友可以參考下
    2015-06-06
  • pyecharts如何使用formatter回調函數的問題

    pyecharts如何使用formatter回調函數的問題

    這篇文章主要介紹了pyecharts如何使用formatter回調函數的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python內置函數OCT詳解

    Python內置函數OCT詳解

    本文給大家介紹的是python中的內置函數oct(),其主要作用是將十進制數轉換成八進制,再變成字符。有需要的小伙伴可以參考下
    2016-11-11
  • python實現Oracle查詢分組的方法示例

    python實現Oracle查詢分組的方法示例

    這篇文章主要介紹了python實現Oracle查詢分組的方法,結合實例形式分析了python使用group by子句及having子句實現Oracle查詢分組的相關操作技巧,需要的朋友可以參考下
    2020-04-04
  • pandas中DataFrame重置索引的幾種方法

    pandas中DataFrame重置索引的幾種方法

    在pandas中,經常對數據進行處理 而導致數據索引順序混亂,從而影響數據讀取、插入等,所以小編總結了幾種索引重置的方法,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • Python異步爬蟲requests和aiohttp中代理IP的使用

    Python異步爬蟲requests和aiohttp中代理IP的使用

    本文主要介紹了Python異步爬蟲requests和aiohttp中代理IP的使用,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • django實現模板中的字符串文字和自動轉義

    django實現模板中的字符串文字和自動轉義

    這篇文章主要介紹了django實現模板中的字符串文字和自動轉義,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • python分析apache訪問日志腳本分享

    python分析apache訪問日志腳本分享

    這篇文章主要介紹了python分析apache訪問日志腳本分享,本文直接給出實現代碼,需要的朋友可以參考下
    2015-02-02
  • 自定義django admin model表單提交的例子

    自定義django admin model表單提交的例子

    今天小編就為大家分享一篇自定義django admin model表單提交的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08

最新評論