构造图像掩膜的方法
1、构造一个圆形掩膜:
a = Table[x^2 + y^2, {x, -3.65, 3.65, 1}, {y, -5, 5, 1}]
结果不尽人意,因为像素值大于1的地方,Mathematica默认为白色。
2、想要获得真正的掩膜,需要除以像素值的最大值:
(a/Max@a) // Image
3、但是上面的图,像素太少,导致放大之后,全是马赛克,因此需要提高采样率:
a = Table[x^2 + y^2, {x, -3.65, 3.65, 0.1}, {y, -5, 5, 0.1}];
b = (a/Max[a]) // Image
4、更高的采样率,会增加计算时间,但改进效果不明显。
a = Table[x^2 + y^2, {x, -3.65, 3.65, 0.01}, {y, -5, 5, 0.01}];
b = (a/Max[a]) // Image
5、方形掩膜:
n=3.65;
a = Table[(Abs[x] + Abs[y])^n, {x, -3.65, 3.65, 0.1}, {y, -5, 5,
0.1}];
b = (a/Max[a]) // Image
6、当n减少到1.66,方形掩膜变成了:
7、n=0.6的情形:
8、变异掩膜:
a = Table[Abs[Sin[x*y]], {x, -3.65, 3.65, 0.1}, {y, -5, 5, 0.1}];
b = (a/Max[a]) // Image
9、对这个掩膜进行模糊处理:
c = b // Blur[#, 10] &
10、把c作为掩膜,应用到b里面,并把掩膜像素值大于0所对应的原图相应像素的颜色变为反色。
ImageApply[1 - # &, b, Masking -> c]
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:88
阅读量:84
阅读量:154
阅读量:82
阅读量:118