墨奇科技博客|计算机视觉在前端应用中的实践 II

在上一篇博客中,我们简单介绍了如何基于 OpenCV.js 或 Rust/WebAssembly 设计并实现技术方案,在前端业务中实现计算机视觉类(下文简称 CV)的功能。感兴趣的同学可以点击下方链接回顾上一期博客:

墨奇科技博客 | 计算机视觉在前端应用中的实践Ⅰicon-default.png?t=M276https://blog.csdn.net/Moqi_AI/article/details/123898816?spm=1001.2014.3001.5502

在本文中,我们将从算法、系统、业务三个方面,分享在进一步的性能优化上的一些经验。

一、优化对象

在我们的业务系统中,大量的 CV 计算函数均以实现“风格转换”为目标,亦即通过变换、增强原始的生物特征图像,方便系统使用者观察、标注、比对。

根据我们的内部数据统计,“图像风格转换”的使用频次较高,且短时间内使用密度大,用户期待快速的视觉反馈。因而以此类函数作为主要的优化目标能带来较高的收益。

锐化、颜色混合是 2 个高频使用的风格转换函数。锐化往往能增强图像纹理细节,加大特征与背景的区分度,对于在较差环境下拍摄、提取的模糊图像,较为实用。颜色混合函数则将单一底色,以线性混合的方式与原图混合,可用于突出生物特征的纹线。常用的为某一特定色度、明度、饱和度下的蓝色。

下文将主要以这 2 个函数为例,介绍性能优化的主要思路与方法。

二、优化思路

对于如 CV 函数般的计算密集型任务,有常见的 3 个性能优化方向。

1.算法

优化算法从而降低时间复杂度、减少高耗时的操作数往往是第一步。例如,对于最常见的卷积操作,我们可以使用 Winograd 算法计算小核(e. g. 3x3, stride 1)以减少乘法计算次数;

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值