第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波3 -冪律變換、伽馬變換

目錄

    • 冪律(伽馬)變換

冪律(伽馬)變換

s=crγ(3.5)s = c r^{\gamma} \tag{3.5}s=crγ(3.5)

c和γc和\gammacγ是正常數。考慮到偏移(即輸入為0時的一個可度量輸出),可改寫為s=c(r+?)γs = c (r + \epsilon) ^{\gamma}s=c(r+?)γ

用于獲取、打印和顯示圖像的許多設備的響應遵守冪律。用于校正這些冪律響應現象的處理稱為伽馬校正伽馬編碼

我們感興趣的是曲線的形狀,而不是它們的相對值

# 伽馬變換不同伽馬值的圖像,為了圖像好看,縮放到相同的數值范圍
x = np.arange(0, 256, 1)
epsilon = 1e-5
gammas = [0.04, 0.10, 0.2, 0.40, 0.67, 1, 1.5, 2.5, 5.0, 10, 25]fig = plt.figure(figsize=(6, 6))
ax = fig.gca()
for gamma in gammas:n_power = normalize(np.power(x + epsilon, gamma)) * 255ax.plot(x, n_power, label='$\gamma = {}$'.format(gamma))ax.legend(loc='best')
plt.ylim([0, 255])
plt.xlim([0, 255])
plt.show()

在這里插入圖片描述

def gamma_transform(img, c, gamma):"""gamma transform 2d grayscale image, convert uint image to floatparam: input img: input grayscale image param: input c: scale of the transformparam: input gamma: gamma value of the transoform"""img     = img.astype(float)                       #先要把圖像轉換成為float,不然結果點不太相同epsilon = 1e-5                                    #非常小的值以防出現除0的情況img_dst = np.zeros(img.shape[:2], dtype=np.float)img_dst = c * np.power(img + epsilon, gamma)img_dst = np.uint8(normalize(img_dst) * 255)return img_dst
# 冪律(伽馬)變換1
img = cv2.imread('DIP_Figures/DIP3E_Original_Images_CH03/Fig0308(a)(fractured_spine).tif', 0)c = 1
gammas = [1.0, 0.04, 0.1, 0.3, 0.2, 0.4, 0.67, 0.9, 1.5, 2.5, 5, 10]
gama_len = len(gammas)fig = plt.figure(figsize=(15, 26))
for i in range(gama_len):ax = fig.add_subplot(4, 3, i+1, xticks=[], yticks=[])img_gamma= gamma_transform(img, c, gammas[i])ax.imshow(img_gamma, cmap='gray')if gammas[i] == 1.0:ax.set_title("Original")else:ax.set_title(f"$\gamma={gammas[i]}$")plt.tight_layout()
plt.show()

在這里插入圖片描述

# 冪律(伽馬)變換2
img = cv2.imread('DIP_Figures/DIP3E_Original_Images_CH03/Fig0309(a)(washed_out_aerial_image).tif', 0)
c = 1
gammas = [1.0, 0.1, 0.3, 0.2, 0.4, 0.67, 0.9, 1.5, 3, 4, 5, 10]
gama_len = len(gammas)fig = plt.figure(figsize=(15, 21))
for i in range(gama_len):ax = fig.add_subplot(4, 3, i+1, xticks=[], yticks=[])img_gamma= gamma_transform(img, c, gammas[i])ax.imshow(img_gamma, cmap='gray')if gammas[i] == 1.0:ax.set_title("Original")else:ax.set_title(f"$\gamma={gammas[i]}$")plt.tight_layout()
plt.show()

在這里插入圖片描述

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

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

相關文章

DBCP|C3P0參數詳解

1.<!-- 數據源1 --> 2. <bean id"dataSource" 3. class"org.apache.commons.dbcp.BasicDataSource" 4. destroy-method"close"> 5. <property name"driverClassName" value"com.mysql.jdbc.Driver"/> 6. …

沒有與參數列表匹配的 重載函數 strcpy_s 實例_Zemax光學設計實例(84)Ftheta掃描平場透鏡的設計...

導論&#xff1a;F-theta透鏡又叫激光掃描聚焦鏡&#xff0c;是激光加工行業必不可少的光學元件之一。對于理想薄透鏡&#xff0c;光束的偏轉角度與軌跡位置的關系為YF*tan(θ)&#xff0c;這種非線性關系會使得勻速偏轉的振鏡掃描速度與軌跡運動速度是不匹配的&#xff0c;導致…

MongoDB學習筆記(一)--基礎

Insert MongoDB在執行插入時&#xff0c;首先會將插入的數據轉換成BSON格式。然后MongoDB數據庫會對BSON進行解剖&#xff0c;并檢查是否存在_id建。 >doc {"_id" : 1…

第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波4 - 分段線性變換 - 對比度拉伸

目錄分段線性變換對比度拉伸最大最小值拉伸分段線性變換 優點 形式可以任意復雜 缺點 要求用戶輸入很多參數 對比度拉伸 光照不足、成像傳感器的動態范圍偏小、圖像獲取過程中鏡頭孔徑的設置錯誤 點(r1,s1)和點(r2,s2)(r_1, s_1)和點(r_2, s_2)(r1?,s1?)和點(r2?,s2?…

2017網易內推編程題(判斷單詞):解答代碼

2019獨角獸企業重金招聘Python工程師標準>>> 小易喜歡的單詞具有以下特性&#xff1a; 1.單詞每個字母都是大寫字母 2.單詞沒有連續相等的字母 3.單詞沒有形如“xyxy”(這里的x&#xff0c;y指的都是字母&#xff0c;并且可以相同)這樣的子序列&#xff0c;子序列可…

Debian下IPv6設定主地址 Set primary IPv6 address under Debian Linux

Linux下選擇IPv6主地址是按照一定規則來的 #RFC3484 (davidc) Prefer same address. (i.e. destination is local machine) Prefer appropriate scope. (i.e. smallest scope shared with the destination) Avoid deprecated addresses. Prefer home addresses.Prefer outgo…

iphone查看刪除的短信_想要恢復已經刪除的的短信怎么辦?

閱讀本文前&#xff0c;請您先點擊上面的藍色字體&#xff0c;再點擊“關注”&#xff0c;這樣您就可以繼續免費收到文章了。每天都有分享&#xff0c;完全是免費訂閱&#xff0c;請放心關注。 …

獲取套接字相關聯信息

前言 知道套接字描述符&#xff0c;如何獲取這個套接字連接的相關信息呢&#xff1f;顯然&#xff0c;這是一個必須要清楚的問題。 獲取本地協議信息 函數原型&#xff1a;int getsockname ( int sockfd, struct sockaddr *localaddr, socklen_t *addrlen ) 函數功能&#xff1…

第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波5 - 分段線性變換 - 灰度級分層

目錄灰度級分層灰度級分層 二值圖像 將感興趣范圍內的所有灰顯示為一個值&#xff08;白色&#xff09;&#xff0c;而將其它灰度值顯示為另一個值&#xff08;黑色&#xff09; 其他灰度級不變 使期望的灰度范圍變量&#xff08;或變暗&#xff09;&#xff0c;但保持圖像中…

Oracle查看鎖表

查看鎖表進程SQL語句1&#xff1a; select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode from v$locked_object lo, dba_objects ao, v$session sess where ao.object_id lo.object_id and lo.session_id sess.sid; 查看鎖…

SQL Server聚集索引的選擇

先聲明文章非原創&#xff0c;摘自博客園&#xff1a;http://www.cnblogs.com/CareySon/archive/2012/03/06/2381582.html 簡介 在SQL Server中&#xff0c;數據是按頁進行存放的。而為表加上聚集索引后&#xff0c;SQL Server對于數據的查找就是按照聚集索引的列作為關鍵字進行…

c++突破網關屏蔽_為什么加了屏蔽罩,測試效果反而不好?

來自專治PCB疑難雜癥微信群群友(群友突破1200人啦&#xff0c;文末添加楊老師微信號&#xff0c;可添加入群)的問題討論&#xff1a;設計時我加了屏蔽罩&#xff0c;結果在測試的時候不加屏蔽罩的效果要比加了屏蔽罩的效果好&#xff0c;這是為何&#xff1f;跟PCB設計的屏蔽罩…

第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波6 - 分段線性變換 - 比特平面分層

目錄比特平面分層比特平面分層 在一幅256級灰度圖像中&#xff0c;圖像的值是由8比特&#xff08;1字節&#xff09;組成的 def convert_bin(data, n):"""convert decimal to binary, return n th bit, 0 if bit value 0 else 1""" #---------…

與眾不同 windows phone (5) - Chooser(選擇器)

與眾不同 windows phone (5) - Chooser&#xff08;選擇器&#xff09; 原文:與眾不同 windows phone (5) - Chooser&#xff08;選擇器&#xff09;[索引頁][源碼下載] 與眾不同 windows phone (5) - Chooser&#xff08;選擇器&#xff09;作者&#xff1a;webabcd介紹與眾不…

iOS GCD

from&#xff1a;http://www.cnblogs.com/dsxniubility/p/4296937.html 一般&#xff1a; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{// 耗時操作dispatch_async(dispatch_get_main_queue(), ^{// 更新UI});}); 本文是對以往學習的多線…

c++和java哪個難_2020 年 11 月編程語言排行榜,Python 超越 Java ?

來源&#xff1a;tiobe.com/tiobe-index/November-2020TIOBE 2020 年 11 月份的編程語言排行榜已經公布&#xff0c;官方的標題是&#xff1a;Python 勢如破竹&#xff0c;超越 Java。題外話: 目前小哈正在個人博客(新搭建的網站&#xff0c;域名就是犬小哈的拼音) www.quanxia…

C# 溫故而知新:Stream篇(七)

C# 溫故而知新&#xff1a;Stream篇&#xff08;七&#xff09; NetworkStream 目錄&#xff1a; NetworkStream的作用簡單介紹下TCP/IP 協議和相關層次簡單說明下 TCP和UDP的區別簡單介紹下套接字&#xff08;Socket&#xff09;的概念簡單介紹下TcpClient,TcpListener,IPEndP…

第3章 Python 數字圖像處理(DIP) - 灰度變換與空間濾波7 - 直方圖處理 - 直方圖、歸一化直方圖

目錄直方圖處理直方圖處理 令rk,k0,1,2,…,L?1r_k, k0, 1, 2, \dots, L-1rk?,k0,1,2,…,L?1表于一幅LLL級灰度數字圖像f(x,y)f(x,y)f(x,y)的灰度。fff的非歸一化直方圖定義為&#xff1a; h(rk)nk,k0,1,2,…,L?1(3.6)h(r_{k}) n_{k}, \quad k 0, 1, 2, \dots, L-1 \tag{…

Xamarin Android提示找不到資源屬性定義

為什么80%的碼農都做不了架構師&#xff1f;>>> Xamarin Android提示找不到資源屬性定義 錯誤信息&#xff1a;”Resource.Attribute”未包含”actonBarSize”的定義 Xamarin Android經常會出現找不到資源屬性的錯誤。遇到這種問題&#xff0c;建議先清理解決方法和…

Google Chrome保存插件方法

1、拷貝下面地址到記事本 https://clients2.google.com/service/update2/crx?responseredirect&xid%3D~~~~%26uc 2、打開插件所在的頁面&#xff0c;拷貝插件地址到記事本 如&#xff1a;https://chrome.google.com/webstore/detail/axure-rp-extension-for-ch/dogkpdfckl…