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

Python實現(xiàn)使用卷積提取圖片輪廓功能示例

 更新時間:2018年05月12日 15:34:53   作者:chengqiuming  
這篇文章主要介紹了Python實現(xiàn)使用卷積提取圖片輪廓功能,涉及Python數(shù)值運算與圖像處理相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Python實現(xiàn)使用卷積提取圖片輪廓功能。分享給大家供大家參考,具體如下:

一、實例描述

將彩色的圖片生成帶邊緣化信息的圖片。

本例中先載入一個圖片,然后使用一個“3通道輸入,1通道輸出的3*3卷積核”(即sobel算子),最后使用卷積函數(shù)輸出生成的結(jié)果。

二、代碼

'''''
載入圖片并顯示
首先將圖片放到代碼的同級目錄下,通過imread載入,然后將其顯示并打印出來
'''
import matplotlib.pyplot as plt # plt 用于顯示圖片
import matplotlib.image as mpimg # mpimg 用于讀取圖片
import numpy as np
import tensorflow as tf
myimg = mpimg.imread('2.jpg') # 讀取和代碼處于同一目錄下的圖片
#myimg = mpimg.imread('img.jpg') # 讀取和代碼處于同一目錄下的圖片
plt.imshow(myimg) # 顯示圖片
plt.axis('off') # 不顯示坐標軸
plt.show()
print(myimg.shape)
'''''
上面這段代碼輸出(960, 720, 3),可以看到,載入圖片的維度是960*720大小,3個通道
'''
'''''
這里需要手動將sobel算子填入卷積核里。使用tf.constant函數(shù)可以將常量直接初始化到Variable中,因為是3個通道,所以sobel卷積核的每個元素都擴成了3個。
注意:sobel算子處理過的圖片并不保證每個像素都在0~255之間,所以要做一次歸一化操作(即將每個值減去最小的結(jié)果,再除以最大值與最小值的差),讓生成的值都在[0,1]之間,然后在乘以255
'''
#full=np.reshape(myimg,[1,3264,2448,3])
full=np.reshape(myimg,[1,960,720,3])
#inputfull = tf.Variable(tf.constant(1.0,shape = [1, 3264, 2448, 3]))
inputfull = tf.Variable(tf.constant(1.0,shape = [1, 960, 720, 3]))
filter = tf.Variable(tf.constant([[-1.0,-1.0,-1.0], [0,0,0], [1.0,1.0,1.0],
                  [-2.0,-2.0,-2.0], [0,0,0], [2.0,2.0,2.0],
                  [-1.0,-1.0,-1.0], [0,0,0], [1.0,1.0,1.0]],shape = [3, 3, 3, 1]))
#步長為1*1,padding為SAME表明是同卷積的操作。
op = tf.nn.conv2d(inputfull, filter, strides=[1, 1, 1, 1], padding='SAME') #3個通道輸入,生成1個feature ma
o=tf.cast( ((op-tf.reduce_min(op))/(tf.reduce_max(op)-tf.reduce_min(op)) ) *255 ,tf.uint8)
with tf.Session() as sess:
  sess.run(tf.global_variables_initializer() )
  t,f=sess.run([o,filter],feed_dict={ inputfull:full})
  #print(f)
  #t=np.reshape(t,[3264,2448])
  t=np.reshape(t,[960,720])
  plt.imshow(t,cmap='Greys_r') # 顯示圖片
  plt.axis('off') # 不顯示坐標軸
  plt.show()

三、運行結(jié)果

四、說明

可以看出,sobel的卷積操作之后,提取到一張含有輪廓特征的圖像。

再查看一下圖片屬性

注:這里用到了tensorflow模塊,可使用pip命令安裝:

pip install tensorflow

如果遇到以下紅字錯誤,可以看到提示更新pip到更新的版本(不報錯可直接跳過到下一標題)。

更新pip到最新版本:

python -m pip install --upgrade pip 

PS:截至目前,tensorflow尚不支持python3.6版本,建議使用兼容性較好的Python3.5版本

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python圖片操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

  • Python爬蟲實戰(zhàn)案例之爬取喜馬拉雅音頻數(shù)據(jù)詳解

    Python爬蟲實戰(zhàn)案例之爬取喜馬拉雅音頻數(shù)據(jù)詳解

    這篇文章主要介紹了Python爬蟲實戰(zhàn)案例之取喜馬拉雅音頻數(shù)據(jù)詳解,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • django傳值給模板, 再用JS接收并進行操作的實例

    django傳值給模板, 再用JS接收并進行操作的實例

    今天小編就為大家分享一篇django傳值給模板, 再用JS接收并進行操作的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Python運行異常管理解決方案

    Python運行異常管理解決方案

    這篇文章主要介紹了Python運行異常管理解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • 在Python中用has_key()方法查找鍵是否存在的教程

    在Python中用has_key()方法查找鍵是否存在的教程

    這篇文章主要介紹了在Python中用has_key()方法查找鍵是否存在的教程,是Python入門學習中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • 教你如何利用Python批量翻譯英文Word文檔并保留格式

    教你如何利用Python批量翻譯英文Word文檔并保留格式

    本文將給大家分享一個實用的Python辦公自動化腳本 利用Python批量翻譯英文Word文檔并保留格式,最終效果甚至比部分收費的軟件還要好!文中有非常詳細的代碼示例.需要的朋友可以參考下
    2021-05-05
  • Python datetime時間格式化去掉前導0

    Python datetime時間格式化去掉前導0

    Python datetime時間格式化去掉前導0,在format string的%與flag之間,添加一個“-”即可
    2014-07-07
  • python docx如何修改word表格內(nèi)容

    python docx如何修改word表格內(nèi)容

    使用Python-docx庫,可以方便地修改Word文檔中的表格內(nèi)容,首先需要安裝python-docx庫,然后使用該庫打開Word文檔,遍歷文檔中的表格并修改指定單元格內(nèi)容,最后另存為新文檔
    2024-09-09
  • Python?pycharm讀取文件相對路徑與絕對路徑的方法

    Python?pycharm讀取文件相對路徑與絕對路徑的方法

    這篇文章主要給大家介紹了關(guān)于Python?pycharm讀取文件相對路徑與絕對路徑的方法,絕對路徑就是文件的真正存在的路徑,是指從硬盤的根目錄(盤符)開始,進行一級級目錄指向文件,相對路徑就是以當前文件為基準進行一級級目錄指向被引用的資源文件,需要的朋友可以參考下
    2023-12-12
  • PyTorch中的CUDA的操作方法

    PyTorch中的CUDA的操作方法

    這篇文章主要介紹了PyTorch中的CUDA的操作方法,CUDA是NVIDIA推出的異構(gòu)計算平臺,PyTorch中有專門的模塊torch.cuda來設(shè)置和運行CUDA相關(guān)操作,更多相關(guān)介紹,需要的朋友可以查看下面文章內(nèi)容
    2022-08-08
  • 基于KL散度、JS散度以及交叉熵的對比

    基于KL散度、JS散度以及交叉熵的對比

    這篇文章主要介紹了基于KL散度、JS散度以及交叉熵的對比,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05

最新評論

民县| 观塘区| 肥乡县| 高青县| 乐亭县| 宝清县| 平武县| 西乌| 长岛县| 大足县| 伊宁县| 麻栗坡县| 唐河县| 普宁市| 湘西| 香河县| 海晏县| 佛坪县| 花莲市| 台东市| 博爱县| 陆丰市| 广昌县| 二连浩特市| 伊川县| 桃园县| 称多县| 慈溪市| 喜德县| 平顶山市| 余干县| 曲阳县| 孟津县| 台北市| 共和县| 营山县| 南陵县| 西青区| 巫山县| 迭部县| 铁岭市|