PS 滤镜——漩涡 vortex
2024-10-15 22:36:33
%%% Vortex
%%% 漩涡效果
clc;
clear all;
close all;
addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm');
I=imread('4.jpg');
Image=double(I);
[row, col,channel]=size(Image);
R=floor(max(row, col)/2);
Image_new=Image;
Degree=45;
Center_X=(col+1)/2;
Center_Y=(row+1)/2;
for i=1:row
for j=1:col
x0=j-Center_X;
y0=Center_Y-i;
if(x0~=0)
beta=atan(y0/x0);
if(x0<0)
beta=beta+pi;
end
else
beta=pi/2;
end
radius=sqrt(x0*x0+y0*y0);
beta=beta+radius/Degree;
x=radius*cos(beta);
y=radius*sin(beta);
x=x+col/2;
y=row/2-y;
if(x>1 && x<col && y<row && y>1)
x1=floor(x);
y1=floor(y);
p=x-x1;
q=y-y1;
Image_new(i,j,:)=(1-p)*(1-q)*Image(y1,x1,:)+p*(1-q)*Image(y1,x1+1,:)...
+q*(1-p)*Image(y1+1,x1,:)+p*q*Image(y1+1,x1+1,:);
end
end
end
figure, imshow(Image_new/255);
原图
效果图
最新文章
- ubuntu安装使用latex和texmaker--PC端
- Caused by: org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple bags
- 2016开发一个app需要多少钱?app开发需要哪些成本-app开发问题汇总-广州达到信息
- poj1160 dp
- struts2中constant参数设置
- 用MATLAB实现字符串分割
- pygame “音乐盒”---- 播放一首歌&; 点击对话框后背景以及对话框大小改变
- C++编译器默默编写并调用哪些函数
- Oracle EBS-SQL (SYS-20):职责使用菜单2.sql
- OCP-1Z0-051-题目解析-第9题
- ios 设置屏幕方向的两种方法
- bzoj4974 字符串大师
- js判断一个元素是否在数组中
- mybatis打印完整的sql
- macbook 下 spark开发环境搭建(基于idea 和maven)及spark单机写运行jar
- WPF--模板选择
- [Python_3] Python 函数 &; IO
- IP 别名和辅助 IP 地址
- 使用Hive UDF和GeoIP库为Hive加入IP识别功能
- Redis-cli命令总结