最新国产好看的视频,伊人天堂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í)簡(jiǎn)單. 就是有點(diǎn)慢. 考慮到我這個(gè)應(yīng)用場(chǎng)景對(duì)性能要求不高, 比人快就行. 人工是它的幾百倍. 所以也就無(wú)所謂啦.
測(cè)試結(jié)果一張1080*1920的圖用時(shí)3秒, 如果換成c語(yǔ)言估計(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ì)丟失的問(wèn)題.
    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()

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

相關(guān)文章

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

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

    國(guó)際標(biāo)準(zhǔn)化組織的國(guó)際標(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ì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    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上下文管理的使用場(chǎng)景實(shí)例講解

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

    在本篇文章里小編給大家整理的是一篇關(guān)于python上下文管理的使用場(chǎng)景實(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ì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • 解決Vscode中jupyter出現(xiàn)kernel dead問(wèn)題

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

    遇到VSCode中Jupyter Kernel Dead時(shí),可通過(guò)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庫(kù),因?yàn)樗峁┝素S富的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)分析工具,下面,我將以處理CSV文件中的某一特定列的所有行數(shù)據(jù)為例,給出詳細(xì)、完整的代碼示例,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • 使用python生成各種常見(jiàn)條形碼及二維碼

    使用python生成各種常見(jiàn)條形碼及二維碼

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

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

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

最新評(píng)論

阿鲁科尔沁旗| 岳阳县| 太保市| 济源市| 达拉特旗| 鹤山市| 定兴县| 包头市| 崇义县| 建水县| 葵青区| 务川| 巴彦县| 东乡县| 修文县| 达州市| 瓮安县| 汉川市| 盘锦市| 延川县| 遵义县| 安平县| 门源| 河津市| 公安县| 宝清县| 高雄市| 巴马| 麻栗坡县| 鹿邑县| 玉门市| 基隆市| 闸北区| 文化| 左权县| 治多县| 右玉县| 凤冈县| 临清市| 荣昌县| 抚州市|