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

pytho多張圖片的無損拼接的實現(xiàn)示例

 更新時間:2021年07月26日 15:33:43   作者:一只不愛曬太陽的貓  
很多人都會是用PS進(jìn)行拼接,本文主要介紹了pytho多張圖片的無損拼接的實現(xiàn)示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下

導(dǎo)入 python 庫

import matplotlib.pyplot as plt
import skimage.io as io
import numpy as np

查看需要拼接的圖片

因為工作需要,所以就不使用昨天晚上的圖片了。
我就拿了兩張截圖作為示例演示。

首先看看拼接前的圖片是什么樣子:

jzg = io.imread('jzg.jpg')   # np.ndarray, [h, w, c], 值域[0, 255], RGB
plt.imshow(jzg)   #查看圖片
plt.show()

解釋說明:“jzg”保存的是numpy的數(shù)組。

jzg

lgz = io.imread('lgz.jpg')   # np.ndarray, [h, w, c], 值域[0, 255], RGB
plt.imshow(lgz)
plt.show()

lgz

因為我使用的是 jupyter Notebook,所以圖片顯示的不是太清晰。

查看一下圖片的大小和數(shù)組元素的數(shù)據(jù)類型。

print(jzg.shape)   #查看圖片的大小
print(jzg.dtype)   #查看數(shù)組元素數(shù)據(jù)類型
print(lgz.shape)
print(lgz.dtype)

輸出:

(720, 1280, 3)
uint8
(720, 1280, 3)
uint8

(720, 1280, 3)表示的是數(shù)組的大小,物理意義為[h, w, c],分別是圖片的高度h,圖片的寬度w,圖片的通道數(shù)c。

可以看出兩者的大小完全一致,數(shù)組元素的數(shù)據(jù)類型為“uint8”。

查看數(shù)組中元素的值域:

print([jzg.min(), jzg.max()])

輸出:

[0, 255]

橫向拼接

創(chuàng)建拼接用的數(shù)組:

pj1 = np.zeros((720,1280 + 1280,3))   #橫著拼接
pj1[:,:1280,:] = jzg.copy()   #圖片jzg在左
pj1[:,1280:,:] = lgz.copy()   #圖片lgz在右
print(pj1.dtype)   #查看數(shù)組元素類型

輸出:

float64

可以看出拼接后的數(shù)據(jù)類型不一樣了,所以要改一下,不然顯示的就是錯誤的。

pj1=np.array(pj1,dtype=np.uint8)   #將pj1數(shù)組元素數(shù)據(jù)類型的改為"uint8"
plt.imshow(pj1)   #查看拼接情況
plt.show()

拼接后的圖片

保存拼接后的圖片

將拼接后的圖片保存在當(dāng)前目錄下,也可以改為其它的路徑。

io.imsave('pj1.jpg', pj1)   #保存拼接后的圖片

總結(jié)

橫向拼接的代碼總結(jié)如下:

import matplotlib.pyplot as plt
import skimage.io as io
import numpy as np

jzg = io.imread('jzg.jpg')   # np.ndarray, [h, w, c], 值域(0, 255), RGB
plt.imshow(jzg)   #查看圖片
plt.show()

lgz = io.imread('lgz.jpg')   # np.ndarray, [h, w, c], 值域(0, 255), RGB
plt.imshow(lgz)
plt.show()

print(jzg.shape)   #查看圖片的大小
print(jzg.dtype)   #查看數(shù)組元素數(shù)據(jù)類型
print(lgz.shape)
print(lgz.dtype)

pj1 = np.zeros((720,1280 + 1280,3))   #橫向拼接
pj1[:,:1280,:] = jzg.copy()   #圖片jzg在左
pj1[:,1280:,:] = lgz.copy()   #圖片lgz在右
print(pj1.dtype)   #查看數(shù)組元素類型

pj1=np.array(pj1,dtype=np.uint8)   #將pj1數(shù)組元素數(shù)據(jù)類型的改為"uint8"

plt.imshow(pj1)   #查看拼接情況
plt.show()

io.imsave('pj1.jpg', pj1)   #保存拼接后的圖片

縱向拼接

當(dāng)然,可以橫向拼接自然也可以縱向拼接,只需將拼接用的數(shù)組改為如下:

pj2 = np.zeros((720 + 720,1280,3))   #橫向拼接

將拼接操作改為:

pj1[:720,:,:] = jzg.copy()   #圖片jzg在上
pj1[720:,:,:] = lgz.copy()   #圖片lgz在下

然后其他步驟都一樣。

圖片間距

有些時候要求要有縫拼接,這時候就將拼接用的數(shù)組橫向或縱向變大,空白區(qū)域使用“0”或者“255”填充(我不知道“0”和“255”中,哪個代表白色,哪個代表黑色,需要的就自己去實驗或者查詢一下)。

到此這篇關(guān)于pytho多張圖片的無損拼接的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)pytho圖片無損拼接內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python正則表達(dá)式匹配IP代碼實例

    python正則表達(dá)式匹配IP代碼實例

    這篇文章主要介紹了python正則表達(dá)式匹配IP代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12
  • python使用Apriori算法進(jìn)行關(guān)聯(lián)性解析

    python使用Apriori算法進(jìn)行關(guān)聯(lián)性解析

    這篇文章主要為大家分享了python使用Apriori算法進(jìn)行關(guān)聯(lián)性的解析,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Python中常用的十個函數(shù)介紹

    Python中常用的十個函數(shù)介紹

    這篇文章主要介紹了Python中常用的十個函數(shù),shutil 是 Python 中的高級文件操作模塊,與os模塊形成互補(bǔ)的關(guān)系,需要的朋友可以參考下
    2023-04-04
  • Django中處理出錯頁面的方法

    Django中處理出錯頁面的方法

    這篇文章主要介紹了Django中處理出錯頁面的方法,即在異常出現(xiàn)時返回的頁面信息,需要的朋友可以參考下
    2015-07-07
  • Django學(xué)習(xí)筆記之View操作指南

    Django學(xué)習(xí)筆記之View操作指南

    這篇文章主要給大家介紹了關(guān)于Django學(xué)習(xí)筆記之View操作指南的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 詳解java調(diào)用python的幾種用法(看這篇就夠了)

    詳解java調(diào)用python的幾種用法(看這篇就夠了)

    這篇文章主要介紹了詳解java調(diào)用python的幾種用法(看這篇就夠了),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Python socket模塊方法實現(xiàn)詳解

    Python socket模塊方法實現(xiàn)詳解

    這篇文章主要介紹了Python socket模塊方法實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Python get獲取頁面cookie代碼實例

    Python get獲取頁面cookie代碼實例

    利用Python get獲取頁面cookie代碼實例,簡單易懂
    2018-09-09
  • Python Socket傳輸文件示例

    Python Socket傳輸文件示例

    這篇文章主要介紹了Python Socket傳輸文件示例,發(fā)送端可以不停的發(fā)送新文件,接收端可以不停的接收新文件。有興趣的可以了解一下。
    2017-01-01
  • 利用Python實現(xiàn)劉謙春晚魔術(shù)

    利用Python實現(xiàn)劉謙春晚魔術(shù)

    劉謙在2024年春晚上的撕牌魔術(shù)的數(shù)學(xué)原理非常簡單,可以用Python完美復(fù)現(xiàn),文中通過代碼示例給大家介紹的非常詳細(xì),感興趣的同學(xué)可以自己動手嘗試一下
    2024-02-02

最新評論

嘉峪关市| 庄河市| 平凉市| 宜宾市| 德保县| 长武县| 夹江县| 墨玉县| 大理市| 梅河口市| 木里| 故城县| 普宁市| 称多县| 日喀则市| 南丰县| 远安县| 孝昌县| 保德县| 怀仁县| 连平县| 武夷山市| 塔城市| 龙泉市| 南乐县| 乾安县| 景宁| 临汾市| 开远市| 东乌珠穆沁旗| 宁乡县| 韶关市| 宁波市| 兴和县| 绥中县| 凉山| 寿宁县| 谢通门县| 金昌市| 娄底市| 涟水县|