我正在用画布在画布上画一个图像drawImage.这是一个被透明像素包围的PNG,如下所示:

如何在画布上为该图像的可见部分添加纯色边框?澄清一下:我不想要一个围绕图像边界框的矩形.边界应绕着草地.
我确实考虑过使用阴影,但我真的不想要一个发光的边框,我想要一个坚固的边框.
我正在寻找一种以编程方式重新创建以下效果的方法:
输入图像:
输入http://www.shiny.co.il/shooshx/ConeCarv/q_input.png
我想迭代地应用"笔画"效果.
第一步看起来像这样:
第1步http://www.shiny.co.il/shooshx/ConeCarv/q_step1.png
第二步是这样的:
alt text http://www.shiny.co.il/shooshx/ConeCarv/q_step2.png
等等.
我假设这将涉及某种边缘检测,然后以某种方式跟踪边缘.
是否有一种已知的算法以高效且稳健的方式执行此操作?
是否可以自动给图像赋予发光效果,例如使用画布?
canvas标签必须省略透明

并使其具有外部辉光?

<canvas id="canvas" width=960 height=960></canvas>
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种从二进制图像(只有黑色和白色像素)创建类似 svg 的路径的方法。图像本身将是一个形状不规则的斑点,其中可能有孔。
如果没有洞,我只需要一个边界路径来重新创建斑点的边界。当斑点中有洞时,我可以使用额外的路径(我猜,单独一条路径无法重新创建它)。最后我只需要知道哪条路径是外部路径,哪些是洞。
我已经找到了这些:
另外我需要检测漏洞。结果是多边形还是路径对我来说并不重要。我只需要精度足够高的点,使曲线保持弯曲:)
如果有人有一个想法甚至一些进一步的来源,那就太好了。
PS:如果这有什么区别的话,我正在使用canvas和javascript(fabricJS)。
javascript canvas image-processing edge-detection html5-canvas