% method : 利用邻域的任意一点代替当前邻域所有像素点

%%%% mosaic

clc;
clear all;
addpath('E:\PhotoShop Algortihm\Image Processing\PS Algorithm');
Image=imread('4.jpg');
Image=double(Image);
size_info=size(Image);  
height=size_info(1);  
width=size_info(2);

N=11;   % 控制邻域大小
Image_out=Image;  
for i=1+N:N:height-N  
    for j=1+N:N:width-N
       k1=rand()-0.5;
       k2=rand()-0.5;
       m=(k1*(N*2-1));  
       n=(k2*(N*2-1));
       h=floor(mod(i+m,height));  
       w=floor(mod(j+n,width));  
       if w==0;  
           w=width;  
       end  
       if h==0  
            h=height;  
       end     
      Image_out(i-N:i+N,j-N:j+N,1)=Image(h,w,1);
      Image_out(i-N:i+N,j-N:j+N,2)=Image(h,w,2);
      Image_out(i-N:i+N,j-N:j+N,3)=Image(h,w,3);
    end  
end

imshow(Image_out/255);

原图

效果图

PS 滤镜算法原理 ——马赛克相关推荐

  1. PS 滤镜算法原理——照亮边缘

    这个算法原理很简单,对彩色图像的R,G,B 三个通道,分别求梯度,然后将梯度值作为三个通道的值. clc; clear all; Image=imread('4.jpg'); Image=double ...

  2. PS 滤镜算法原理——染色玻璃

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/shinian1987/article/details/30485639 %%%% 完毕PS 中的染色 ...

  3. PS 滤镜算法原理——曝光过度

    这个算法的原理,就是将图像反相,然后分别比较原图与反相后的图三个通道的大小,将小的值输出. clc; clear all; Image=imread('4.jpg'); Image=double(Im ...

  4. PS 滤镜算法原理——浮雕效果

    clc; clear all; Image=imread('4.jpg'); Image=double(Image); p=3;  %% 控制浮雕的强度 %% 控制浮雕的方向 H=[0 0 p     ...

  5. PS 滤镜算法原理——高反差保留 (High Pass)

    这个特效简单来说,就是一个高通滤波器, 对图像做高斯滤波,用原图减去高斯滤波后的图,再将差值加上128. clc; clear all; close all; Image=imread('4.jpg' ...

  6. PS 滤镜算法原理——拼贴

    %%%% Tile  %%%%% 实现拼贴效果 %%%%% 将原图像进行分块,然后让图像块在 %%%%% 新图像范围内进行随机移动,确定移动后的边界 %%%%% 将移动后的图像块填入新图像内 clc; ...

  7. 图片滤镜算法原理简单讲解

    一.锐化 锐化的算法很简单,就是比较相邻的几个像素,把当前像素加上和周围的像素的差就可以了.这里我给出一个示例: A B C D E F G H I J K L M N O P 假设有一个图片,4*4 ...

  8. PS 滤镜算法— — 表面模糊

    图像的表面模糊处理,其作用是在保留图像边缘的情况下,对图像的表面进行模糊处理.在对人物皮肤处理上,比高斯模糊更有效.因为高斯模糊在使人物皮肤光洁的同时,也将一些边缘特征如脸部的眉毛.嘴唇等给模糊了,不 ...

  9. python图片马赛克_Python实现PS滤镜中马赛克效果示例

    本文实例讲述了Python实现PS滤镜中马赛克效果.分享给大家供大家参考,具体如下: 这里利用 Python 实现PS 滤镜中的马赛克效果,具体的算法原理和效果可以参考附录说明,Python示例代码如 ...

最新文章

  1. 固定旋转_旋转压片机如何正确更换冲模?
  2. 《Python和Pygame游戏开发指南》——2.16 pygame.display.update()函数
  3. 我总结了65份面试题,累计2430页,肝的太累了
  4. Nat. Commun. | 序列到功能的深度学习框架加速工程核糖调节剂设计和优化
  5. python开课吧官网_开课吧老师详解 学Python真的可以帮助提高办公效率吗
  6. javaweb回顾第二篇tomcat和web程序部署
  7. 【python】数据结构与算法之选择排序
  8. DELETE大批量数据的性能优化
  9. 下拉多选择框 实现方式_物体检测之旅(三)|设计选择,经验教训和物体检测的趋势...
  10. javascript真的是异步的吗?且看setTimeout的实现原理以及setTimeout(0)的使用场景
  11. C++ Primer Plus第二章课后编程答案
  12. (44)System Verilog数组逻辑运算
  13. C++表白代码---一颗心
  14. Introduction to CALayers Tutorial
  15. Learn the python the hard way (Day 3)
  16. Java判断拼音的工具类
  17. Mac下虚拟机win10键盘不兼容解决方案-MS Office Word篇
  18. goland 注释模板_【精品】金工实习心得体会模板合集5篇
  19. 什么是旅行商问题(Traveling Salesman Problem, TSP)?
  20. 通过搭建web服务来实现页面访问

热门文章

  1. 思维导图:从Xmind到docsify博客
  2. 从雀书无代码应用——浅谈零代码开发平台(上)
  3. VMware Workstation 三种网络连接配置详解
  4. VmWare16 安装图解
  5. Qwerty Learner:为键盘工作者设计的单词记忆与英语肌肉记忆锻炼网页
  6. iOS 仿微信发送语音消息按钮 - 语音播放器(三)
  7. 是否使用安全模式启动word
  8. Android Studio系统盘瘦身
  9. python中trun是什么意思_Python 中 'unicodeescape' codec can't decode bytes in position XXX: trun錯誤解決方案...
  10. 在C#中使用钩子实现Alt+F4健窗口最小化功能