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

python實(shí)現(xiàn)求純色彩圖像的邊框

 更新時(shí)間:2021年04月08日 15:24:19   作者:走錯(cuò)路的程序員  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)求純色彩圖像的邊框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python實(shí)現(xiàn)求純色彩圖像的邊框,供大家參考,具體內(nèi)容如下

先上效果圖,這里顯示有點(diǎn)色差, 實(shí)際數(shù)值是純色的, 而不是混色的.

放大局部細(xì)節(jié)看是這樣的

原圖是下面這樣的

這個(gè)算法最大的特點(diǎn)是保留原始像素的數(shù)值, 而不是把邊框統(tǒng)一變成白色.
實(shí)現(xiàn)的算法也超級(jí)簡單. 就是有點(diǎn)慢. 考慮到我這個(gè)應(yīng)用場景對(duì)性能要求不高, 比人快就行. 人工是它的幾百倍. 所以也就無所謂啦.
測(cè)試結(jié)果一張1080*1920的圖用時(shí)3秒, 如果換成c語言估計(jì)0.5秒左右.

算法原理, 每次4個(gè)田子形像素逐行掃描. 發(fā)現(xiàn)4個(gè)像素不一致的就輸出到結(jié)果圖上. 否則就是輸出0.

代碼如下.

#
# demo.py
# 識(shí)別單張圖片
#
import argparse
import os 
import numpy as np
import time

from modeling.deeplab import *
from dataloaders import custom_transforms as tr
from PIL import Image
from torchvision import transforms
from dataloaders.utils import  *
from torchvision.utils import make_grid, save_image,to_image

import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt

def main():
    im = Image.open("test_border.png")
    npimg = np.array(im) # 這個(gè)圖片是1維的索引圖. 
    # chwimg = npimg.transpose(2,0,1) # HWC 變成 CHW 格式的矩陣
    print(npimg.shape)
    h,w,c = npimg.shape

    src = np.sum(npimg,axis=2) # 這里測(cè)試用, 先把3通道的合成了一個(gè)通道的, 實(shí)際使用的時(shí)候也是1通道的.
    print(src.shape)
    borderimg = np.zeros(src.shape) #默認(rèn)都輸出了0 后面就不用輸出0了.
    # 修補(bǔ)bug, 解決邊框線會(huì)丟失的問題.
    borderimg[0,:]=src[0,:]
    borderimg[:,0]=src[:,0]
    borderimg[-1,:]=src[-1,:]
    borderimg[:,-1]=src[:,-1]
   
    t1= time.time()
    for x in range(0,h-1,1): 
        for y in range(0,w-1,1):
            # point = src[x,y]
            # if(point>0):
                # print(point)
            if not (src[x,y] == src[x+1,y] == src[x,y+1] == src[x+1,y+1]): # 發(fā)現(xiàn)4個(gè)像素不一致的就輸出到結(jié)果圖上.
                borderimg[x,y] = src[x,y]
                borderimg[x+1,y] = src[x+1,y]
                borderimg[x,y+1] = src[x,y+1]
                borderimg[x+1,y+1] = src[x+1,y+1]
    t2= time.time()
    print("耗時(shí)",t2-t1)

    plt.figure()
    plt.title('display') 
    plt.imshow(src) 
    plt.show( )

    plt.imshow(borderimg) 
    plt.show( )

    print("start test get image border ...")

if __name__ == "__main__":
    main()
else:
    main()

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 利用Python將時(shí)間或時(shí)間間隔轉(zhuǎn)為ISO 8601格式方法示例

    利用Python將時(shí)間或時(shí)間間隔轉(zhuǎn)為ISO 8601格式方法示例

    國際標(biāo)準(zhǔn)化組織的國際標(biāo)準(zhǔn)ISO8601是日期和時(shí)間的表示方法,全稱為《數(shù)據(jù)存儲(chǔ)和交換形式·信息交換·日期和時(shí)間的表示方法》,下面這篇文章主要給大家介紹了關(guān)于利用Python將時(shí)間或時(shí)間間隔轉(zhuǎn)為ISO 8601格式的相關(guān)資料,需要的朋友可以參考下。
    2017-09-09
  • 在keras下實(shí)現(xiàn)多個(gè)模型的融合方式

    在keras下實(shí)現(xiàn)多個(gè)模型的融合方式

    這篇文章主要介紹了在keras下實(shí)現(xiàn)多個(gè)模型的融合方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python-re中search()函數(shù)的用法詳解(查找ip)

    Python-re中search()函數(shù)的用法詳解(查找ip)

    這篇文章主要介紹了Python-re中search()函數(shù)的用法-----查找ip,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • python上下文管理的使用場景實(shí)例講解

    python上下文管理的使用場景實(shí)例講解

    在本篇文章里小編給大家整理的是一篇關(guān)于python上下文管理的使用場景實(shí)例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-03-03
  • pandas返回缺失值位置的方法實(shí)例教程

    pandas返回缺失值位置的方法實(shí)例教程

    當(dāng)我們用python進(jìn)行數(shù)據(jù)處理時(shí)會(huì)遇到很多缺失值,缺失值一般是由于我們所處理的數(shù)據(jù)本身的特性、當(dāng)初錄入的失誤或者其它原因?qū)е碌?下面這篇文章主要給大家介紹了關(guān)于pandas返回缺失值位置的方法,需要的朋友可以參考下
    2022-01-01
  • opencv3/Python 稠密光流calcOpticalFlowFarneback詳解

    opencv3/Python 稠密光流calcOpticalFlowFarneback詳解

    今天小編就為大家分享一篇opencv3/Python 稠密光流calcOpticalFlowFarneback詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 解決Vscode中jupyter出現(xiàn)kernel dead問題

    解決Vscode中jupyter出現(xiàn)kernel dead問題

    遇到VSCode中Jupyter Kernel Dead時(shí),可通過Anaconda Prompt安裝ipykernel解決,首先使用jupyter kernelspec list命令查看內(nèi)核,若發(fā)現(xiàn)缺少ipykernel,激活相應(yīng)虛擬環(huán)境,使用conda install ipykernel命令安裝,操作后,VSCode中Jupyter應(yīng)能正常運(yùn)行
    2024-09-09
  • python循環(huán)某一特定列的所有行數(shù)據(jù)(方法示例)

    python循環(huán)某一特定列的所有行數(shù)據(jù)(方法示例)

    在Python中,處理表格數(shù)據(jù)(比如CSV文件、Excel文件等)時(shí),我們通常會(huì)使用pandas庫,因?yàn)樗峁┝素S富的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)分析工具,下面,我將以處理CSV文件中的某一特定列的所有行數(shù)據(jù)為例,給出詳細(xì)、完整的代碼示例,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • 使用python生成各種常見條形碼及二維碼

    使用python生成各種常見條形碼及二維碼

    條形碼和二維碼是現(xiàn)代信息交換和數(shù)據(jù)存儲(chǔ)的重要工具,它們將信息以圖形的形式編碼,便于機(jī)器識(shí)別和數(shù)據(jù)處理,本文將介紹如何使用Python快速生成各種常見的條形碼如Code 128、EAN-13,以及生成二維碼,需要的朋友可以參考下
    2024-07-07
  • Python免登錄實(shí)現(xiàn)域名解析的示例詳解

    Python免登錄實(shí)現(xiàn)域名解析的示例詳解

    這篇文章主要介紹了如何利用編寫python腳本,實(shí)現(xiàn)通過dnspod api獲取個(gè)人域名內(nèi)的dns解析記錄,從而實(shí)現(xiàn)域名的解析、修改和刪除,需要的可以參考一下
    2023-03-03

最新評(píng)論

秦安县| 柞水县| 丰宁| 瓦房店市| 图们市| 和静县| 垦利县| 新晃| 甘南县| 上思县| 旬阳县| 临安市| 佛坪县| 临猗县| 临高县| 水城县| 梧州市| 南汇区| 扎赉特旗| 红安县| 当阳市| 永丰县| 容城县| 江孜县| 定陶县| 汉沽区| 会泽县| 高碑店市| 盈江县| 社旗县| 永宁县| 黑龙江省| 乳源| 通化县| 保康县| 和硕县| 宿松县| 崇阳县| 荆门市| 昆明市| 渝北区|