vc如何打開plt圖像_圖像基本操作-open cv

import cv2
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
img = cv2.imread('revolte.jpg')
img # 讀取的是array 格式
array([[[240, 243, 255],[239, 242, 255],[238, 241, 255],...,def cv_show(name,image):cv2.imshow(name,image)cv2.waitKey(0)cv2.destroyAllWindows()
cv_show('image',img) #定義個函數不用每次都寫這么多行
img.shape#常用的屬性
(183, 275, 3)
###灰度圖的讀取
img= cv2.imread('revolte.jpg',cv2.IMREAD_GRAYSCALE)
cv_show('Gray',img)
cv2.imwrite('gray.jpg',img)
True

視頻的處理

vc = cv2.VideoCapture('AMZ.mp4')
while open:ret,frame = vc.read()#返回兩個值if frame is None:breakif ret == True:gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)cv2.imshow('gray result',gray)if cv2.waitKey(1)&0xFF ==27:break
vc.realse()
cv2.destroyAllWindows()                     ^

顏色通道的提取

b,g,r = cv2.split(img)
img = cv2.merge((b,g,r)) #合并通道
#只保留B
cur_img = img.copy()
cur_img[:,:,1]=0
cur_img[:,:,2]=0
cv_show('B',cur_img)

邊界的填充(padding),有復制法(復制最邊緣的像素),反射法,外包裝法,常量法

top_size,bottom_size,left_size,right_size=(50,50,50,50)
replicate = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REPLICATE)
reflect = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT)
reflect101 = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT_101)
wrap = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_WRAP)
const =wrap = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_CONSTANT,value = 0)
plt.subplot(221),plt.imshow(img,'gray'),plt.title('Original')
plt.subplot(222),plt.imshow(replicate,'gray'),plt.title('replicate')
plt.subplot(223),plt.imshow(reflect,'gray'),plt.title('replicate101')
plt.subplot(224),plt.imshow(const,'gray'),plt.title('const')

133897d737d75949705b3c95639bc266.png

數值計算

img2 = img+10
#可以切片進行計算,numpy計算越界取余
#不同于cv2.add 越界取最大

圖像融合

img2 = cv2.imread('mito.jpg')
img2.shape
(159, 317, 3)
img.shape
(159, 317, 3)
img = cv2.resize(img,(317,159))
img = cv2.flip(img, 1)
res = cv2.addWeighted(img,0.6,img2,0.4,0)
plt.imshow(res)

7e1ebb30394f4a0a4458d9d05f11ff61.png

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/276788.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/276788.shtml
英文地址,請注明出處:http://en.pswp.cn/news/276788.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

自學編程需要注意什么?

1。選合適自己的職業,不同的職業門檻不一樣,難度不一樣,或多或少總有差別。 笨的選JS,有點底子的選Java,半調子的選Android或者是IOS-如果這兩個職業還沒完蛋的話。 不想寫代碼的選PM和UI,要求不高的選QA&a…

帆軟報表(finereport)table塊鉆取,返回記住table塊位置

<1>首先table塊加初始化事件&#xff0c;idex為參數&#xff0c;參數值為$tab_idexsetTimeout(function(){_g().getWidgetByName("tabpane0").showCardByIndex(Number(idex)); },10) <2>在table塊鉆取位置&#xff0c;加js事件鉆取var u navigator.user…

python調用api應用接口_Python接口測試之urllib2庫應用

在接口測試中或者說在網絡爬蟲中&#xff0c;urllib2庫是必須要掌握的一個庫&#xff0c;當然還有優秀的requests庫&#xff0c;今天重點來說urllib2庫在接口測試中的應用。urllib2定義了很多的函數和類&#xff0c;這些函數和類能夠幫助我們在復雜情況下獲取URLS的內容。這些情…

破解MS Word 的只讀密碼限制

如果你有Microsoft Office XP 或者 Microsoft Office 2003&#xff0c;你可以使用Microsoft Script Editor 來查看&#xff08;使用AltShiftF11 快捷鍵切換&#xff09;被限制的Word 文檔的HTML&#xff0d;Code。當Word 文檔在Microsoft Script Editor打開后&#xff0c;搜索關…

CSS3透明背景表單

在線演示 本地下載

r-studio掃描后各種顏色_iPhone手機備忘錄,原來還隱藏著掃描儀,你不會還不知道吧?...

大家好&#xff0c;今天就來給大家講一講&#xff0c;iPhone手機備忘錄里面的一個隱藏功能&#xff0c;大家對手機備忘錄應該都不陌生吧&#xff0c;iPhone手機的備忘錄里有一個掃描儀的功能&#xff0c;可以將紙質文檔變成電子檔&#xff0c;不知道的小伙伴就和我一起來看看吧…

今早新聞的翻譯

踏切で人身事故 東上線亂れ&#xff14;萬人に影響  &#xff11;&#xff15;日午前&#xff17;時&#xff12;&#xff10;分ごろ、東京都板橋區常盤臺&#xff13;丁目の東武東上線ときわ臺―上板橋間の踏切で遮斷機の下をくぐった女性が成増発池袋行き普通電車にはねられ…

MySQL保留2位小數

1、round(x,d)&#xff0c;四舍五入。round(x) ,其實就是round(x,0),也就是默認d為0 select round(110.35,1); # 110.4 2、TRUNCATE(x,d)&#xff0c;直接截取需要保留的小數位 select TRUNCATE(110.35,1); # 110.3 3、FORMAT&#xff08;x,d&#xff09;&#xff0c;四舍五入…

TiDB 在小米的應用實踐

作者&#xff1a;張良&#xff0c;小米 DBA 負責人&#xff1b;潘友飛&#xff0c;小米 DBA&#xff1b;王必文&#xff0c;小米開發工程師。一、應用場景介紹 MIUI 是小米公司旗下基于 Android 系統深度優化、定制、開發的第三方手機操作系統&#xff0c;也是小米的第一個產品…

java圖片識別查看器模擬_[轉載]windows照片查看器無法顯示圖片內存不足

問題描述最近在使用Windows照片查看器打開一個jpg文件的時候異常Windows照片查看器無法顯示此圖片&#xff0c;因為計算機上的可用內存可能不足。請關閉一些目前沒有使用的程序或者釋放部分硬盤空間(如果硬盤幾乎已滿)&#xff0c;然后重試問題分析這時我們按F11或者圖片下方中…

等寬字體

摘抄了一個編程用字體選擇標準&#xff0c;供各位參考&#xff1a; 1. 所有字符等寬&#xff1b; 2. 簡潔、清晰、規范的字符形體&#xff1b; 3. 支持ASCII碼為128以上的擴展字符集&#xff1b; 4. 空白字符(ASCII: 0x20)與其他字符等寬&#xff1b; 5. 1、l和i等三個字符易于…

海量數據索引與近似最近鄰隨記

最近鄰問題(NN) 將次數看成向量&#xff0c;然后我們就可以比對向量的距離(歐式距離&#xff0c;余弦距離)。數據中會有一些異常點&#xff0c;這些異常點會導致結果的不穩定。這種思想非常的不穩定&#xff0c;因為他只基于一個樣本來做最后類別的判定。K最近鄰算法(NN > K…

MySQL時間格式TIMESTAMP和DATETIME的區別

時區&#xff0c;timestamp會跟隨設置的時區變化而變化&#xff0c;而datetime保存的是絕對值不會變化 自動更新&#xff0c;insert、update數據時&#xff0c;可以設置timestamp列自動以當前時間(CURRENT_TIMESTAMP)填充/更新 占用存儲空間不同&#xff0c;timestamp儲存占用…

python c 選擇_C和Python,小白應該選擇學習哪門語言?

首先&#xff0c;需要對兩門語言進行初步認識&#xff0c;C語言是一門通用性的編程原因&#xff0c;為什么說通用呢?是因為它能夠做很多低級、底層的處理&#xff0c;同時具有良好的跨平臺性&#xff0c;C語言可以按照一定的標準在多種計算機平臺上進行編譯&#xff0c;包含嵌…

WaitForSingleObject的用法

WaitForSingleObject的用法 1.WaitForSingleObject 的用法 DWORD WaitForSingleObject(HANDLE hHandle, DWORD dwMilliseconds ); 參數 hHandle 是一個事件的句柄&#xff0c;第二個參數 dwMilliseconds 是時間間隔。如果時間是有信…

pom.xml里發布和下載包

1.下載包 在<project>標簽中 <repositories><repository><id>nexus</id><url>http://10.39.93.105:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots>&l…

智能云改-docker云遷移實戰

本次安裝的linux版本是centos7.4&#xff0c;docker安裝不依賴任何環境&#xff0c;但是必須要連接網絡&#xff0c;滿足這一點就可以進行docker安裝了。 一、安裝&#xff1a; 1.刪除就版本的docker輸入命令&#xff1a;yum -y remove docker \docker-common \docker-selinux …

python詞頻統計代碼_python統計詞頻

一、程序分析 &#xff08;1&#xff09;將文件讀入緩沖區&#xff08;dst指文本文件存放路徑&#xff0c;設置成形參&#xff0c;也可以不設&#xff0c;具體到函數里設置&#xff09; def process_file(dst): # 讀文件到緩沖區try: # 打開文件 txtopen(dst,"r") ex…

關于wpf,datagrid,雙向數據綁定用法解決方案

參考&#xff1a;http://www.myexception.cn/c-sharp/1446457.html 核心內容&#xff0c;在綁定數據的地方添加雙向綁定&#xff1a; {Binding BB, ModeTwoWay,UpdateSourceTriggerPropertyChanged} 轉載于:https://www.cnblogs.com/Mindy-hym/p/11431069.html

部署zookeeper分布式節點

用2臺服務器&#xff0c;低資源&#xff0c;部署3個zookeeper分布式節點&#xff1a; 1.準備環境系統已經配置好了JAVA環境&#xff1b;下載某個版本的zookeeper壓縮包&#xff0c;下載鏈接&#xff1a;http://apache.claz.org/zookeeper/zookeeper-3.5.3-beta/zookeeper-3.5.3…