五、像素運算

一、相關概念

1、算術運算
Ⅰ加減乘除
Ⅱ調節亮度
Ⅲ調整對比度

2、邏輯運算
Ⅰ與或非
Ⅱ遮罩層控制

二、圖像算術運算(加減乘除均值方差)

其中圖像的加減乘除需要保證兩張圖像的大小相同

import cv2
import numpy as npdef add(src1,src2):dst = cv2.add(src1,src2)cv2.imshow("add",dst)def subtract(src1,src2):dst1 = cv2.subtract(src1,src2)dst2 = cv2.subtract(src2,src1)cv2.imshow("subtract1",dst1)cv2.imshow("subtract2",dst2)def divide(src1,src2):dst1 = cv2.divide(src1,src2)dst2 = cv2.divide(src2,src1)cv2.imshow("divide1",dst1)cv2.imshow("divide2",dst2)def multiply(src1,src2):dst = cv2.multiply(src1,src2)cv2.imshow("multiply",dst)def average_value(src1,src2):#圖像均值m1 = cv2.mean(src1)m2 = cv2.mean(src2)print("均值1:",m1)print("均值2:",m2)def mean_variance(src1,src2):m1,dev1 = cv2.meanStdDev(src1)#m為均值,dev為方差m2,dev2 = cv2.meanStdDev(src2)print("均值1:",m1)print("均值2:",m2)print("方差1:",dev1)print("方差2:",dev2)def compare(src1):#當全為1的圖像,其方差為0h,w = src1.shape[:2]print(h,w)img = np.ones([h,w],np.uint8)m,dev = cv2.meanStdDev(img)print("均值是:",m,"方差是:",dev)src1 = cv2.imread(r"G:\Juptyer_workspace\study\opencv\opencv3\a1.jpg")
src2 = cv2.imread(r"G:\Juptyer_workspace\study\opencv\opencv3\a2.jpg")
print(src1.shape)
print(src2.shape)#cv2.namedWindow("image1",cv2.WINDOW_AUTOSIZE)
cv2.imshow("image1",src1)
cv2.imshow("image2",src2)add(src1,src2)
subtract(src1,src2)
divide(src1,src2)
multiply(src1,src2)average_value(src1,src2)
mean_variance(src1,src2)compare(src1)cv2.waitKey(0)
cv2.destroyAllWindows()

運行效果如下:
在這里插入圖片描述
在這里插入圖片描述

三、圖像的邏輯運算(與或非)

與或運算針對兩張圖片而言,非運算針對單一圖片而言

import cv2
import numpy as npdef logic(src1,src2):And = cv2.bitwise_and(src1,src2)cv2.imshow("logic_and",And)Or = cv2.bitwise_or(src1,src2)cv2.imshow("logic_or",Or)Not1 = cv2.bitwise_not(src1)cv2.imshow("logic_not1",Not1)Not2 = cv2.bitwise_not(src2)cv2.imshow("logic_not2",Not2)src1 = cv2.imread(r"G:\Juptyer_workspace\study\opencv\opencv3\a1.jpg")
src2 = cv2.imread(r"G:\Juptyer_workspace\study\opencv\opencv3\a2.jpg")
cv2.imshow("image1",src1)
cv2.imshow("image2",src2)logic(src1,src2)cv2.waitKey(0)
cv2.destroyAllWindows()

運行效果圖如下:
在這里插入圖片描述

四、對圖像的對比度、亮度進行調節

import cv2
import numpy as npdef contrast_brightness(src,c,b):#目標圖像、對比度、亮度h,w,ch = src.shapeblack = np.zeros([h,w,ch],src.dtype)dst = cv2.addWeighted(src,c,black,1-c,b)cv2.imshow("contrast_brightness",dst)src = cv2.imread(r"G:\Juptyer_workspace\study\opencv\opencv3\a1.jpg")
cv2.imshow("image",src)contrast_brightness(src,1,2)cv2.waitKey(0)
cv2.destroyAllWindows()

效果圖如下:
在這里插入圖片描述

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

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

相關文章

創建bootstrap項目_使用Bootstrap創建第一個網頁

創建bootstrap項目使用Bootstrap創建第一個網頁 (Create First Webpage with Bootstrap) In the previous article, we learned "how to setup bootstrap?" for a web project. If you haven’t gone through that, it is recommended to read it. Now, in this art…

Chaikin Curve(球面插值)

在兩條折線間完成平滑的過渡是 用畫布做UI 或者做類似地圖編輯器一類的工作的 很常見的任務。 怎么樣化方為圓是決定工作效率的很重要的因素。(當需要編輯的曲線多起來, 復雜起來的時候,這會是件相當繁重的工作) 最容易想到的莫非…

【2020 電設G題 圖像題解】

博主聯系方式: QQ:1540984562 QQ交流群:892023501 群里會有往屆的smarters和電賽選手,群里也會不時分享一些有用的資料,有問題可以在群里多問問。 2022.3.10新增訂閱通知 近期把此專欄設置為了付費模式,可以直接花9.9買這個專欄,買了就可以直接這個專欄的所有文章了。后…

六、ROI和泛洪填充

一、ROI ROI:region of interest,即感興趣區域。 一般主要通過numpy來獲取ROI 將某區域轉變為灰色圖片再覆蓋原圖像 import cv2 import numpy as npsrc cv2.imread(r"G:\Juptyer_workspace\study\opencv\opencv3\a1.jpg") cv2.imshow(&quo…

VS2005 there is no source code available for the current location 解決方案

1.首先試最常規的方法:Clean and then rebuild solution,但是沒有解決 2.進入Tools>Options,選擇Debugging>General 卻掉 Enable address-level debugging 選項,在去掉 Require source files to exactly match the original version. O…

django 靜態數據_如何在Django中使用靜態數據?

django 靜態數據Static Data means those data items that we cannot want to change, we want to use them as it is like audio, video, images, files etc. 靜態數據是指我們不想更改的數據項,我們想像音頻,視頻,圖像,文件等那…

Leetcode226. 翻轉二叉樹(遞歸、迭代、層序三種解法)

目錄題目1、層序法:2、遞歸法:1、先序遍歷(中左右)2、后序遍歷(左右中)3、遞歸中序遍歷為什么不行(左中右)3、迭代法:1、先序遍歷2、中序遍歷3、后序遍歷為什么迭代法的中…

Asp.net 獲取當前目錄的三種方法

方法一: string sPath System.IO.Path.GetDirectoryName(Page.Request.PhysicalPath) 方法二: string sPath System.Web.HttpContext.Current.Request.MapPath("/") 方法三: string s…

一款jQuery立體感動態下拉導航菜單特效

一款jQuery立體感動態下拉導航菜單特效,鼠標經過,在菜單欄上方下拉出一個背景圖片,效果十分不錯的一款jquery特效。 對IE6都是兼容的,希望大家好好研究研究。 適用瀏覽器:IE6、IE7、IE8、360、FireFox、Chrome、Safari、Opera、傲…

七、模糊操作

一、模糊操作基本原理 1,基于離散卷積 2,定義好每一個卷積核 3,不同卷積核得到不同的卷積效果 4,模糊是卷積的一種表象 二、1*3卷積核舉例 每次右移一格,進行對應相乘再求和。1*3的卷積核左右兩邊的元素并沒有處理而…

LeetCode 100. 相同的樹 思考分析

給定兩個二叉樹,編寫一個函數來檢驗它們是否相同。 如果兩個樹在結構上相同,并且節點具有相同的值,則認為它們是相同的。 示例 1: 輸入: 1 1 / \ / 2 3 2 3 [1,2,3], [1,2,3]輸出: true 示例 2: 輸入: 1 1 / 2 2 [1,2], [1,null,2]輸…

在Python中以二進制格式輸入數字

Syntax to convert binary value to an integer (decimal format), 將二進制值轉換為整數(十進制格式)的語法, int(bin_value, 2)Here, 這里, bin_value should contain the valid binary value bin_value應該包含有效的二進制值 2 is the base value …

八、邊緣保留濾波(EPF)

一、概念 邊緣保留濾波(EPF,edge preserving filtering) 二、高斯雙邊 cv2.bilateralFilter(image,0,100,15)100為差異,15為周圍的區域 import cv2 import numpy as npdef bilateralFilter(image):dst cv2.bilateralFilter(image,0,100,15)cv2.imshow(bilater…

LintCode 375. 克隆二叉樹(深復制)

先序遍歷構造二叉樹 TreeNode * preorder(TreeNode * root){if(rootNULL) return NULL;TreeNode * ans;ansnew TreeNode(root->val);if(root->left!NULL){ans->leftpreorder(root->left);}if(root->right!NULL){ans->rightpreorder(root->right);}return…

關于ECMAScript基礎入門的分享

目錄 ECMAScript基礎入門1. 介紹2. 變量與數據類型2.1 變量2.2 數據類型 3. 運算符3.1 算術運算符3.2 比較運算符 4. 控制流4.1 條件語句4.2 循環語句 5. 函數6. 對象與數組6.1 對象6.2 數組 7. 總結 ECMAScript基礎入門 1. 介紹 ECMAScript是JavaScript的標準規范&#xff0…

kotlin 計算平方_Kotlin程序來計算復利

kotlin 計算平方Compound interest is the sum of principal amount and interest of interest. 復利是本金和利息之和。 Given, principal, rate, and time, we have to calculate the Compound interest. 給定本金,利率和時間,我們必須計算復利。 Fo…

近代科學為什么誕生在西方-1

寬泛的講,近代科學是幾種文明在長達幾個世紀的持續交流碰撞中產生的。它正在日益成為全世界全人類都有效的普適科學。通向現代科學之路就是通向自由和開放交流之路。 馬克思韋伯和莫頓都認為,科學事業要持續的進步就要特定的文化和制度的支持。 中國的數…

九、圖像直方圖

一、圖像直方圖的屬性 說白了就是將圖像上的各個顏色通道上的像素點的像素值進行統計,例如:像素值為14的像素點個數有幾個,進行顯示。 圖像的像素值取值范圍為[0,255],這個范圍也成為直方圖的range也就是直方圖的橫坐標軸 每一個…

BIFR的完整形式是什么?

BIFR:工業和金融重組委員會 (BIFR: Board of Industrial and Financial Reconstruction) BIFR is an abbreviation of the Board of Industrial and Financial Reconstruction. It was an organization of the Government of India and a branch of the Department …

LeetCode 101. 對稱二叉樹 思考分析

題目 給定一個二叉樹,檢查它是否是鏡像對稱的。 例如,二叉樹 [1,2,2,3,4,4,3] 是對稱的。 1/ 2 2 / \ / 3 4 4 3 但是下面這個 [1,2,2,null,3,null,3] 則不是鏡像對稱的: 1/ 2 2 \ 3 3 進階: 你可以運用遞歸和迭代兩種方法解決這個…