给图像添加伪影

在写论文的过程中遇到需要为图像添加伪影,找不到现有的方法于是自己写了matlab代码

参数都在代码里面进行了说明
function [fin] =getEll(im,a,b,px,py,value,range) 
% im:function just aplly his scale 
% a: Major axis of ellipse
% b: Minor axis of ellipse
% px: the centerX
% py: the centerY
% value: gray value
% range: thickness 
[x,y] =size(im);
temp = zeros(x,y); 
Cx = px;
Cy = py;
for i = Cx:x
    for j = Cy:y
        if(abs(1-((i-Cx)^2/a^2+(j-Cy)^2/b^2))<=range)
            temp(i,j)= value;
            tx = Cx-(i-Cx);
            ty = Cy-(j-Cy);
            if tx <= 0
                tx = 1;
            end
            if ty <=0
                ty = 1;
            end
            temp(tx,ty+1) = value; %In order to avoid 0,+1
            temp(tx+1,j) = value;
            temp(i,ty+1) = value;
        end
    end
end
fin = temp;
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值