前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >图像编辑器 Monica 之图像涂鸦、裁剪、有趣的滤镜

图像编辑器 Monica 之图像涂鸦、裁剪、有趣的滤镜

作者头像
OpenCV学堂
发布于 2024-05-31 06:26:32
发布于 2024-05-31 06:26:32
24600
代码可运行
举报
运行总次数:0
代码可运行

一. 图像编辑器 Monica

Monica 是一款跨平台的桌面图像编辑器,使用 Kotlin Compose Desktop 进行开发基于 mvvm 架构,使用 koin 作为依赖注入的框架。

Monica 开发的背景和初衷可以看 使用 Kotlin Compose Desktop 开发的图像编辑器

目前 Monica 还处于开发阶段,当前版本的主要功能包括:

  • 加载本地图片、网络图片。
  • 对图片进行局部模糊、打马赛克。
  • 对图片进行涂鸦,并保存涂鸦的结果。
  • 对图片进行裁剪。
  • 调整图片的饱和度、色相、亮度。
  • 提供 20 多款滤镜,大多数滤镜也可以单独调整参数。
  • 放大、缩小图像。
  • 对修改的图像进行保存。

二. 图像涂鸦

涂鸦是 Monica 的基础功能,就是对图像进行随意涂画。

点击上图带提示的按钮,就可以进入涂鸦界面,对图像进行随意的涂鸦。

由于是桌面软件,画笔由鼠标进行控制。画笔默认是黑色的,可以随着鼠标的移动而进行绘制曲线。

Monica 支持选择画笔的颜色。

以及选择画笔的粗细。

涂鸦完之后,记得保存图片,这样回到主界面之后才真正的保存结果了。

涂鸦的效果主要是基于 Canvas 来绘制 Path 实现的。难点在于手势的事件处理和 Path 的绘制,以及将最终的结果保存到 bitmap 。

特别是将 Canvas 的结果保存在网上的资料比较少,所以贴了出来:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    fun saveCanvasToBitmap(density:Density, paths: List<Pair<Path, PathProperties>>, image: ImageBitmap, state:ApplicationState) {

        val bitmapWidth = image.width
        val bitmapHeight = image.height

        val drawScope = CanvasDrawScope()
        val size = Size(bitmapWidth.toFloat(), bitmapHeight.toFloat())
        val canvas = Canvas(image)

        drawScope.draw(
            density = density,
            layoutDirection = LayoutDirection.Ltr,
            canvas = canvas,
            size = size,
        ) {
            state.isDoodle = false
            state.togglePreviewWindow(false)

            paths.forEach {

                val path = it.first
                val property = it.second

                drawPath(
                    color = property.color,
                    path = path,
                    style = Stroke(
                        width = property.strokeWidth,
                        cap = property.strokeCap,
                        join = property.strokeJoin
                    )
                )
            }
        }

        state.addQueue(state.currentImage!!)
        state.currentImage = image.toAwtImage()
    }

三. 图像裁剪

点击带提示的裁剪按钮

可以进入图像裁剪的界面

用户可以基于九宫格的选框,对图像进行裁剪。

裁剪完之后,会在主界面显示截取之后的图像。

图像裁剪也是大量基于 Canvas 的操作。

四. 有趣的滤镜

当前版本新增了一些滤镜,选择2款有意思的介绍。

一款是生成铅笔画的效果:

另一款是生成油画的效果:

五. 总结

Monica 目前到了 0.2 版本,暂时还不提供安装包不过可自行编译。等版本相对稳定后,会提供 Windows/Linux/MacOS 的安装包。因为,接下来还会有大量的架构调整和代码重构。

后期 Monica 的重点是增加对图像各种形状的裁剪,对现有算法的效率进行提升,增加用户和软件的交互,尝试引入一些深度学习的算法等等。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OpenCV学堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
项目需求讨论:截图—涂鸦—分享
这个也是具体项目中遇到的项目需求:需要在一个特定的界面中(都是图表和各种数据,可能需求分享给别人,告诉别人这个数据怎么怎么,这个图表怎么怎么) 所以给我们开发的需求就是:
青蛙要fly
2018/08/29
7350
项目需求讨论:截图—涂鸦—分享
Photoflare:满足简单编辑需求的开源图像编辑器
在 Linux 上编辑图像时,GIMP 显然是首选。但是,如果你不需要高级编辑功能,GIMP 可能会让人不知所措。这是像 Photoflare 这样的应用立足的地方。
用户8639654
2021/09/16
1.5K0
《探索鸿蒙Next上人工智能图像编辑应用的技术路径》
在鸿蒙Next系统的加持下,人工智能图像编辑应用迎来了全新的发展机遇。以下是一些开发此类应用的技术路径探讨。
程序员阿伟
2025/01/12
970
《探索鸿蒙Next上人工智能图像编辑应用的技术路径》
QDraw - Photo Editor Pro for Mac(图像编辑工具)
QDraw Photo Editor Pro是一款适用于Mac的图像编辑器软件,可以帮助您在电脑上创建和处理图片、照片和其他图像。它具有多种工具和功能,让您可以对图像进行不同种类的编辑和优化。 该软件提供了多种基本编辑工具,如旋转、裁剪、缩放、调整亮度、对比度、饱和度等等。 QDraw Photo Editor Pro还支持多种文件格式,包括JPEG、PNG、BMP、GIF、TIFF、RAW等等。您可以使用该软件导入、打开、保存和导出这些文件类型,以及与其他应用程序集成使用。 总之,如果您需要一个功能强大的图像编辑器软件来处理照片和其他图像,QDraw Photo Editor Pro可能是值得一试的选择。
对影三人
2023/03/20
4200
QDraw - Photo Editor Pro for Mac(图像编辑工具)
Flutter图像编辑器应用(1)—— 亮度和对比度调节实现
想象一下,在一个阳光明媚的下午,与家人或朋友漫步在风景如画的街道上。拿出手机,迫不及待地捕捉这一刻的美好,按下快门,留下了一张充满回忆的照片。
繁依Fanyi
2024/04/20
5760
卧槽,这个前端图片编辑器有点牛!
「前端实验室」 专注分享 Github、Gitee 等开源社区优质的前端项目、前端技术、前端学习资源以及前端资讯等各种有趣实用的前端内容。
程序员老鱼
2023/12/13
2.6K0
卧槽,这个前端图片编辑器有点牛!
专业的图像编辑器Adobe Photoshop for Mac 22.4.3
Adobe Photoshop 是公认的经典照片增强软件。它提供了广泛的工具,可以在任何设备上将您的灵感转化为令人难以置信的图像、照片、合成、3D 艺术作品、绘画和图形。 Photoshop 已成为全球数千名创意专业人士的选择。它于 1988 年首次推出,至今仍是世界领先的图像编辑软件。 直观和干净的用户界面 虽然 Photoshop for Mac 是当今市场上最全面的图形和图像编辑软件,但它具有非常直观且易于导航的界面。 随着最近可用性的提高,这款照片编辑器变得更加易用。一旦您决定使用 Photoshop,界面就会加载。 用户友好的界面会为您更新新功能、建议学习内容并允许您快速访问最近的文件。您可以轻松地选择离开的地方或创建新项目、访问云和桌面图片以及打开现有文档。
Mac推荐
2021/10/18
8140
PHP在线图像编辑器 Pixie v3.0.3
Pixie是一款完全可定制的高性能照片编辑器,可在任何地方使用,并且可以轻松集成到现有项目中或使用独立应用程序。
哈德森
2023/04/07
3.1K0
PHP在线图像编辑器 Pixie v3.0.3
图形编辑器基于Paper.js教程02:图形图像编辑器概述
由于笔者目前从事开发图形编辑器,在开始的那段时间里,调研和研究了非常多的图形编辑器,图像编辑器之类的软件,开源,闭源的,免费的,商业的都有。今天的这篇文章就来简单概述一下我调研的结果和过程。
拿我格子衫来
2024/07/15
3730
图形编辑器基于Paper.js教程02:图形图像编辑器概述
Android图片处理工具类(圆角,压缩)
工作中用到的图片处理工具类,简单写下来,以便备用! public class BitmapUtils { /** * 图像背景圆角处理 * bitmap要处理的图片 roundPx 图片弯角的圆度一般是5到10之间 */ public static Bitmap getRoundedCornerBitmap(Bitmap bitmap, float roundPx) { // 创建与原图大小一样的bitmap文件,Config.ARGB_8888根据情况可以改用其它的 Bitmap
用户7705674
2021/09/24
5750
发现一个牛逼的图片编辑器!
大家好,我是前端实验室的大师兄!一名资深的互联网玩家,专注分享大前端领域技术、面试宝典、学习资料。
程序员老鱼
2022/12/02
1.8K1
图像任意裁剪
算法:图像任意裁剪是将图像裁剪成若干任意大小图像。 文献:LHL, 李红林. (2011). 基于投影法实现矩形窗口的任意曲线裁剪 random clipping of curves in rectangular windows based on the projection method. 云南民族大学学报:自然科学版, 20(2). Kurtz, B. D. , & Claiborne, S. J. . (1999). Efficient method for clipping numerous objects against an arbitrary clipping path. US. 链接:https://www.gaitubao.com/
裴来凡
2022/05/29
2.3K0
图像任意裁剪
Android 带你撸一个好玩的 DoodleView(涂鸦)
可以看到这个这个自定义 View 的功能还是很丰富的,无论是设置画笔的形状、颜色、粗细,还是进行重置和保存,该有的 API,基本都已经实现了。有需要的读者直接 点击这里 ,希望帮忙点个 star,哈哈哈。
developerHaoz
2018/08/20
7860
从零开发一款图片编辑器Mitu-Dooring
我们知道,为了提高企业研发效能和对客户需求的快速响应,现在很多企业都在着手数字化转型,不仅仅是大厂(阿里,字节,腾讯,百度)在做低代码可视化这一块,很多中小企业也在做,拥有可视化低代码相关技术背景的程序员也越来受重视。
徐小夕
2021/09/03
1.3K0
从零开发一款图片编辑器Mitu-Dooring
PhotoBulk for Mac(图像编辑器)
photobulk mac中文版是简单实用的图片批量加水印软件,可以在Mac上批量重命名图像,优化照片,压缩图像文件,添加水印,通过两侧写着 text 和 image 的开关就能调节,对于文字的字体、大小,图片的分辨率、透明度等都可以调节。简单好用,极大的简化了图像编辑。
用户10121095
2023/01/13
5930
QDraw - Photo Editor Pro for Mac(图像编辑工具)
QDraw Photo Editor Pro是一款适用于Mac的图像编辑器软件,可以帮助您在电脑上创建和处理图片、照片和其他图像。它具有多种工具和功能,让您可以对图像进行不同种类的编辑和优化。 该软件提供了多种基本编辑工具,如旋转、裁剪、缩放、调整亮度、对比度、饱和度等等。 QDraw Photo Editor Pro还支持多种文件格式,包括JPEG、PNG、BMP、GIF、TIFF、RAW等等。您可以使用该软件导入、打开、保存和导出这些文件类型,以及与其他应用程序集成使用。 总之,如果您需要一个功能强大的图像编辑器软件来处理照片和其他图像,QDraw Photo Editor Pro可能是值得一试的选择。
皮西歪
2023/03/20
5340
QDraw - Photo Editor Pro for Mac(图像编辑工具)
基于Java实现图像浏览器的设计与实现
推荐一个网站给想要了解或者学习人工智能知识的读者,这个网站里内容讲解通俗易懂且风趣幽默,对我帮助很大。我想与大家分享这个宝藏网站,请点击下方链接查看。 https://www.captainbed.cn/f1
鲜于言悠
2024/07/03
2560
基于Java实现图像浏览器的设计与实现
2.3K Star开源在线图片编辑器
开源日记
2024/01/23
4470
2.3K Star开源在线图片编辑器
Android多点触控技术实战,自由地对图片进行缩放和移动
用户1158055
2018/01/05
2.4K0
Android多点触控技术实战,自由地对图片进行缩放和移动
他们主动布局(autolayout)环境的图像编辑器
上的,今天我将其pull到github上来了,大家能够自行下载:git clone git@github.com:lihux/twentyThousandTomatoes.git没有安装git或者不会用的童鞋,
全栈程序员站长
2022/07/05
9000
他们主动布局(autolayout)环境的图像编辑器
推荐阅读
相关推荐
项目需求讨论:截图—涂鸦—分享
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验