佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > python實現(xiàn)求純色彩圖像的邊框

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

熱門標簽:百度AI接口 呼叫中心市場需求 Win7旗艦版 客戶服務 硅谷的囚徒呼叫中心 電話運營中心 語音系統(tǒng) 企業(yè)做大做強

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

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

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

原圖是下面這樣的

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

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

代碼如下.

#
# demo.py
# 識別單張圖片
#
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) # 這個圖片是1維的索引圖. 
    # chwimg = npimg.transpose(2,0,1) # HWC 變成 CHW 格式的矩陣
    print(npimg.shape)
    h,w,c = npimg.shape

    src = np.sum(npimg,axis=2) # 這里測試用, 先把3通道的合成了一個通道的, 實際使用的時候也是1通道的.
    print(src.shape)
    borderimg = np.zeros(src.shape) #默認都輸出了0 后面就不用輸出0了.
    # 修補bug, 解決邊框線會丟失的問題.
    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個像素不一致的就輸出到結果圖上.
                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("耗時",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()

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • python 圖像增強算法實現(xiàn)詳解
  • python 基于opencv實現(xiàn)圖像增強
  • 用Python給圖像算法做個簡單應用界面
  • python+opencv圖像分割實現(xiàn)分割不規(guī)則ROI區(qū)域方法匯總
  • python-opencv實現(xiàn)視頻指定幀數(shù)間隔圖像的保存功能
  • Python深度學習之圖像標簽標注軟件labelme詳解
  • python使用matplotlib顯示圖像失真的解決方案
  • python調用stitcher類自動實現(xiàn)多個圖像拼接融合功能
  • python數(shù)字圖像處理之估計噪聲參數(shù)
  • Python深度學習之使用Albumentations對圖像做增強

標簽:喀什 山西 濟南 長沙 山西 崇左 安康 海南

巨人網絡通訊聲明:本文標題《python實現(xiàn)求純色彩圖像的邊框》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    明水县| 永定县| 遵义县| 德清县| 龙州县| 宜君县| 开江县| 康马县| 萍乡市| 文水县| 呈贡县| 镇宁| 安阳市| 绩溪县| 武胜县| 文水县| 济宁市| 永济市| 莱州市| 中方县| 合山市| 盈江县| 根河市| 鸡西市| 敦化市| 保德县| 乌苏市| 大同县| 武邑县| 马公市| 资源县| 武宣县| 罗源县| 静乐县| 名山县| 天峨县| 隆尧县| 大化| 泰顺县| 日喀则市| 嘉义市|