微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

NumPy 中的 SVG 像素合成操作

如何解决NumPy 中的 SVG 像素合成操作

我正在使用 GIMP 图层操作,它 (AFAICT) 映射回 SVG 合成操作 (https://gitlab.gnome.org/GNOME/gegl/-/blob/master/operations/generated/src.c,https://www.w3.org/TR/SVGCompositing)

我正在处理由 OpenCV 加载并使用 NumPy 处理的图像。我最感兴趣的是实现 GIMP(SVG?)“覆盖”操作。是否有任何图书馆已经这样做了?如果没有库,如何将 SVG 规范转换为 NumPy?叠加合成定义为:

if 2 × Dc <= 1
  f(Sc,Dc) = 2 × Sc × Dc
otherwise
  f(Sc,Dc) = 1 - 2 × (1 - Dc) × (1 - Sc)
X        = 1
Y        = 1
Z        = 1

if 2 × Dca <= Da
  Dca' = 2 × Sca × Dca + Sca × (1 - Da) + Dca × (1 - Sa)
otherwise
  Dca' = Sa × Da - 2 × (Da - Dca) × (Sa - Sca) + Sca × (1 - Da) + Dca × (1 - Sa)
       = Sca × (1 + Da) + Dca × (1 + Sa) - 2 × Dca × Sca - Da × Sa

Da' = Sa + Da - Sa × Da

诚然,我在解码 SVG 符号时遇到了麻烦。 (否则为什么在第二个中有两个 = 语句?)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。