clojure - 在 clojure 中处理图像的最佳方法是什么?

标签 clojure scientific-computing

作为python模拟的一部分,我采用了一个二维数组并采用了这个数组的梯度。这是在 scipy/numpy 中通过使用具有适当权重的过滤器对 2d 数组进行卷积来完成的。

所以我的问题是,如果我想在 clojure 中以相当快的速度执行此操作,在纯 clojure 中执行此操作是否有意义,还是使用 Java 图像处理库并从 clojure 调用它更好?

最佳答案

Clojure 中优化良好的循环将具有接近 Java 代码的性能。

我会建议使用原始向量或直接来自 clojure 的数组
以获得非常好的性能。

我读过一篇关于这个主题的博文:
http://www.bestinclass.dk/index.clj/2010/03/functional-fluid-dynamics-in-clojure.html

好的过程是从清晰且有效的代码开始,然后再进行调整以提高性能。

通常,Clojure 中的性能围绕着摆脱反射和使用原语。
这在这里解释:
http://clojure.org/java_interop

关于clojure - 在 clojure 中处理图像的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3629805/

相关文章:

c++ - F#在科学计算中的表现

numpy - 涉及 Scitools、NumPy 和 SciPy 的推荐设置

java - Clojure 的平均亮度非常慢

unit-testing - clojure.test/are 与 clojure.test/testing

compiler-construction - Clojure 中的语法树生成

c++ - 浮点优化 - 指南

java - 从非类名符号访问类的静态字段

clojure - 为什么 compojure 路由定义为宏?

python - 为什么 numpy 本身就是 'slow'?

计算麦克斯韦-玻尔兹曼分布