jit.gl.pix でモルフォロジー処理を実装してみた : #max6 #jitter #cycling74

Before

スクリーンショット 2014-07-11 16.12.13

After

スクリーンショット 2014-07-11 16.12.10

モルフォロジー処理は、コバルト爆弾αΩのΔに教えてもらいました。ノイズを消すにはメディアンフィルターより良いとの事。エッジ抽出などにも使えるようです。アルゴリズムや使い道は、こちらが参考になりました。10個とか重ねて書けてもあまりfps落ちないので、シェーダー凄いっぽい。

CodeBox(モルフォロジー処理(収縮))


delta = 1/(dim+1);

outPix = in1;

for( i = 0 ; i < 9 ; i += 1) { x = ((i%3)-1) * delta.x; y = (floor(i/3) -1) * delta.y; pix = nearest(in1,vec( x,y ) + norm,boundmode="clamp"); outPix = switch(pix < 0.5, pix,outPix); } out1 = outPix;

pix < 0.5 を pix > 0.5 にすると膨張処理に変わります。

Max Patch

スクリーンショット 2014-07-11 16.22.09


----------begin_max5_patcher----------
1904.3oc6a0raaaDD9r7SwBgV.6FEE9qDUSRQ5aPuGGHPItRdSH4xRtxVtA4
PsAZKPuzK8EnGJPQPu2C8sQnnuFc1cIoIkHonjoncJjLLo0r+My2N67CG52e
RmtSnKwQcQeI50nNcd+Ic5HHwIzI96c55YubpqcjnacmR87v9rt8jsEDRYT1
0AXeaOrnCLByEmzLCujIn9VBq+b29AjknUe+GWcyOs5led0s+1pa+3pa+0U2
7Gqt8OWcyes51+9e9we+e+keHY7yn9rHx2IlYMi9JIjCmOgSRIkRfMa5ED+4
iCwSYR4QyBZEooxuZnH9htdeEzahGBwQvYzIu8oZFYWvTQ4qCI1tIs3uvi36
hYBXP8NhzErDpJYljY1SEShNmzGN4D9kd0DiYz4yuCCkK.GikxUWB.+oRQAB
tpkQeydHKStHqppmdqPQWIcqzNDDbFNbLrYNwEmUhpgvqtGB5ZJSoZKdzvfK
ntz4jo1tHZ.NzlQn9EoUnpcmNPHNBlMQWy.G55lb3PWi2SgJC+RJVTKcoj4P
ef.LMEyhlRwPp5vlQapAAThm8bLhcAfP.t5.B2Vvx5cBanBGUzrrpCpL3ACU
lGcEAX9ROPUmSS5VBoyPXNQWqDYTemOLo2XGl7wWA7PEVd2uiOpiDp9ZC0K7
3yFfIrdim6Nlu9KBAiXaCdimdoNjoZkpPJMhJjVVtAGFCowXJL2DW7k3vHtA
m6liNcsCBxPtSlgv2HdKULQC5kRh3KIolRJDeIIY7CSoZGBXBC.DNbwkmkVC
5JaD17OIYnoG5FwgnAhqVRuaBcyD.CTSlOErcFJ6tR+Q8xbQMeGcoSeG1Iix
IrgB9xI9YUFx0rCdl8BW13hUhx2dhOvBarvsuNcmGRbn9blH2H4jSVNPoQ5Z
yLqvH5gucPACNBjiEQSrC4ve7gQsjFYTpa9lR2wgya19foSFlQjLqlR5jR7B
BEdhyrPxy5WDMMj55lapjsbYAs3.JESwWQbXWjyfKuEn6jfjsftoXjCYNNhk
mFyddTdJ4BsKq1ZVCI4nWkAk7FU9JfOMy1RIpCUatsLaBRGIpiFJUtW2jvFg
vrNiTrpUYVGJy7amDSvwmDadTj3iTOzfng.CU1FFptmXnxCMFBqXsAwRQIco
eG8gaClLZbUMkBfo6Lp4R7K6LrPX3sWL9EQWDNMQYI9TBJubA1WXD+TS7uNU
DWqeWPbbxaQUZDJhaRyoLgn28liUqIGq0PbL5MmbGklK3KeJIBiLPybo1LcM
HFGwuaIZrBiqBbEExiiqlwTYDaBvrpfpzZlXp1CLyCGEAokrAnMagqK34Ci8
QelZgvjd4vTk.iL1ISCYvSCkdYJAVL2QbQqwBj+dl9erPpLJYWuh89AOfI+W
xQl.DD1yttqOwFxnsJPALvalBJFZIOYnBAkcM8ckhgjOsyxv7trLFHsiXrdV
FGSd3XxCkFxl7jP2pi9RyRDdpll7lYx0xB+xZeBvJSKIOdLgn1NwmFgcQoVT
14n7E105Uin8iQRUYHrF5GpblzJEm0ZG77c3q2WvjefqWQ2pK3pJrCZNRDbU
qlLkwisrDrNlkPr+8H6KwNigU.TWFayf.zmrfI2Nx5u+95Za6tN2A68ExDUr
3ksnPH.SrciivIcrE3V4fjX0UDeG5Un3auZVDXaeA3MF1leEma4AtfzG.eaB
MzAGhT4cx1VdOsyIyMWmaJcgz8f1Nlc1FFpqHxbK4CavTqpRRpZ8fkWFWIdA
YWyOs5LRUkht74rrkJEYzLUJJgJWbDSfTKnaiWZkKINXZfqsONUWzdAiBg9Q
lx0EYg19Qyngdi4wEyPGzT+kUqxPVnR83.qJqdJFOX5X22hUceK6TboKiKna
0kcZzwpNcrpSGSbrkRbbJ0Ay64gstHxG9mgU7iFscqtTtLRcjSlC1kYidIR8
Ym5P7dh5YO+b+y8gQ8Mjk.Yhupf.3F4TDAHnfdNb+EnQh6OAF3Ym6+9y8Q7O
7Qb5ojOW+rmpdF5KPhIu+xmG2707lm4Rg4h7L8yPY6z0IcJPrt9Xa3LI6TX8
6cId5onk8tFcF5IHvLiWuIP3RNdfH7xy6B6fdAm28rjwmx5xW9hS4y2KPBqt
ve1S1Lu2eHVPUg9Jo97tGq+1w5u8+r5u014o16StJFdfp+FDOYH1mm+mL57t
GtT6Rp3lpdUwSZ8XKpaFZh3GbncDdegm0uKmrZfYJBSjCGVEj0LuQkFMGj8s
dXVHEk+kZr1v01QE0ABTYPkkt03S6RTpJeibqtDklO9pPoK01QpkeP15kwjN
n5Wl1l4IjjASDqRd+cRHZcuFw.0l92Tx5FnDWEix0mMbSroKhM1wZT1g+95h
TaE9Arfgz1B6n0ZniVc.Gk1icp8lU6vOipK6n0N5x50geLZM3g+.Z2N+X0dp
OCqA+nMn83m5fO7Wvn1heLebseUmsq1kazeTwMp22i5dDm.JDDVrqbyg8szg
OZ7W8I4+qNiLjuHTVYhun4Dh5nu0hlqpA2Lr8BLoFby9ZZPFD2ZkLfyHqUpf
0JSvlkHnrxC.qyGN4+vQ5NbF
-----------end_max5_patcher-----------

@nanonumさんにコードの貼り方教えて貰いました!ずっと気になってたんですが、誰にも聞けず・・・ありがとうざいます!

Leave a Comment