日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

图像的点运算

發(fā)布時(shí)間:2025/3/21 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图像的点运算 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

所謂點(diǎn)運(yùn)算,是指像素值(像素點(diǎn)的灰度值)通過(guò)運(yùn)算之后,可以改善圖像的顯示效果。這是一種像素的逐點(diǎn)運(yùn)算。

點(diǎn)運(yùn)算又稱(chēng)為“對(duì)比度增強(qiáng)”、“對(duì)比度拉伸”,“灰度變換”(體現(xiàn)了點(diǎn)運(yùn)算在哪些方面改變圖片的顯示效果)。

?

一.線(xiàn)性點(diǎn)運(yùn)算

1.1 說(shuō)明

1.2 示例

以lenna圖像為例,點(diǎn)運(yùn)算代碼如下:

close all; clear all; I = imread('lenna.jpg'); I1 = 1.5 * I; %增強(qiáng)對(duì)比度 I2 = 0.8 * I; %減弱對(duì)比度 I3 = -1 * int8(I) + int8(255); %黑白反轉(zhuǎn) subplot(2, 2, 1), imshow(I), title('原始圖像') subplot(2, 2, 2), imshow(I1), title('對(duì)比度增強(qiáng)') subplot(2, 2, 3), imshow(I2), title('對(duì)比度減弱') subplot(2, 2, 4), imshow(I3), title('黑白反轉(zhuǎn)')

處理后的圖像顯示如下:

?

?

二.非線(xiàn)性點(diǎn)運(yùn)算

2.1 說(shuō)明

非線(xiàn)性點(diǎn)運(yùn)算對(duì)應(yīng)于非線(xiàn)性映射函數(shù),典型的映射包括平方函數(shù),對(duì)數(shù)函數(shù),截取(窗口函數(shù)),閾值函數(shù),多值量化函數(shù)等。

2.2 示例

  • 閾值化處理

閾值化處理是最常用的一種非線(xiàn)性運(yùn)算,它的功能是選擇一閾值,將圖像二值化,用于圖像分割及邊緣跟蹤等處理。

代碼如下:

close all; clear all; I = imread('lenna.jpg'); T = mean2(I); %設(shè)定初始閾值 done = false; while ~doneG = I > T;Tnext = 0.5 * (mean(I(G)) + mean(I(~G)));done = abs(T - Tnext) < 0.5;T = Tnext; end G = im2bw(I, T/255); %根據(jù)確定的閾值進(jìn)行圖像二值分割 subplot(1, 2, 1), imshow(I), title('原始圖像'); subplot(1, 2, 2), imshow(G), title('二值圖像');

?處理后的圖像顯示如下:

  • 直方圖均衡化

如果一副圖像的像素占有很多的灰度級(jí)而且分布均勻,那么這樣的圖像往往有高對(duì)比度和多變的灰度色調(diào)。

代碼如下:

clear all; close all; I = imread('lenna.jpg'); subplot(2, 2, 1), imshow(I), title('原始圖像'); subplot(2, 2, 2), imhist(I); G = histeq(I); % 灰度直方圖的均衡化 subplot(2, 2, 3), imshow(G), title('直方圖均衡化后圖像'); subplot(2, 2, 4), imhist(G);

?處理后的圖像顯示如下:

?histeq的實(shí)現(xiàn)代碼如下:

clear all; close all; I = imread('lenna.jpg'); I = im2double(I); [M, N] = size(I); [counts, x] = imhist(I); % counts:灰度值的個(gè)數(shù),x:灰度值 location = find(counts ~= 0); % 找到所有像素個(gè)數(shù)不為0的灰度級(jí)位置 minCDF = min(counts(location)); % 找到像素?cái)?shù)最少的灰度級(jí) for i = 1 : length(location)CDF = sum(counts(location(1 : i))); % 計(jì)算各個(gè)灰度級(jí)像素的累計(jì)分布P = find(I == x(location(i))); % 找到灰度級(jí)所在位置I(P) =(CDF - minCDF) / (M * N - minCDF); % 灰度變換公式 end

數(shù)學(xué)推導(dǎo)查看

轉(zhuǎn)載于:https://www.cnblogs.com/minisculestep/p/4851897.html

總結(jié)

以上是生活随笔為你收集整理的图像的点运算的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。