PointOperation02_Matlab灰度gray图clamp

1 计算原理

对图像各像素点(i, j)做以下运算:
记某像素点的值为p,则:
f ( p ) = { a p < a p a ≤ p ≤ b b p > b f(p)= \begin{cases} a& \text{p < a}\\ p& {a \leq p \leq b}\\ b& \text{p > b} \end{cases} f(p)=apbp < aapbp > b
则p被clamp在 [ a , b ] [a, b] [a,b]区间内。

2 代码实现

%% reading in the image
orgIMG = rgb2gray(imread("lena.jpg"));
figure(1);
subplot(1,2,1);
imshow(orgIMG);
title("Original IMG");
subplot(1,2,2);
imhist(orgIMG);
axis([0 255 0 800]);
title("The Histogram of the original img");


%% clamp image
% Define parameters
a_min = 100;    % a_min <- 0~a_max
a_max = 200;    % a_max <- a_min~255

smaller = find(orgIMG < a_min);
orgIMG(smaller) = a_min;

larger = find(orgIMG > a_max);
orgIMG(larger) = a_max;


%% Draw the new img
figure(2);
subplot(1,2,1);
imshow(orgIMG);
title("Modified IMG");
subplot(1,2,2);
imhist(orgIMG);
axis([0 255 0 800]);
title("The Histogram of the Modified img");

3 效果展示

原图:
在这里插入图片描述
[ a , b ] = [ 100 , 200 ] [a, b] = [100, 200] [a,b]=[100,200]
在这里插入图片描述

4 源码下载

源码下载地址:点击此处

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值