一. 图像编辑器 Monica
Monica 是一款跨平台的桌面图像编辑软件(早期是为了验证一些算法而产生的)。

其技术栈如下:
Kotlin 编写 UI(Kotlin Compose Desktop 作为 UI 框架)
基于 mvvm 模式,依赖注入使用 koin,编译使用 JDK 17
部分算法使用 Kotlin 实现
其余的算法使用 OpenCV C++ 来实现,Kotlin 通过 jni 来调用。
Monica 所使用的模型,主要使用 ONNXRuntime 进行部署和推理
其余少部分模型使用 OpenCV DNN 进行部署和推理。
本地的算法库使用 C++ 17 编译
Monica 目前还处于开发阶段,当前版本的可以参见 github 地址:https://github.com/fengzhizi715/Monica
这两个月由于工作比较繁忙,我只把 CV 算法快速调参的模块做了完善。
二. 实验性的功能——提供 CV 常见算法的快速调参的能力
在之前的相关系列文章中,曾介绍过该模块完成了二值化、边缘检测、轮廓分析等功能。这次更新了一些新的功能包括: 图像增强、图像降噪、形态学操作、模版匹配。
下面展示该模块的入口
以及该模块的首页
目前,该模块只规划了上述的功能,并已全部实现。短期内暂时不会增加新功能。
2.1 图像增强
该模块提供的图像增强算法,其实之前在 Monica 中早已实现了,我只是把他们从首页移动到这里。这些图像增强算法包括:直方图均衡化、clahe、gamma 变换、Laplace 锐化、USM 锐化、自动色彩均衡。
下图展示的的是进入图像增加的页面,并加载了某个图像的原图。
下图分别展示的是原图经过直方图均衡化后的效果和原图经过 gamma 变换后的效果。

2.2 图像降噪
该模块提供的图像降噪算法都是通过图像滤波实现的。目前支持高斯滤波、中值滤波、高斯双边滤波、均值迁移滤波。