开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 9473|回复: 11
收起左侧

[技术专题] 图像分割之证件照背景替换

[复制链接]
结帖率:88% (79/90)
发表于 2022-10-8 12:54:14 | 显示全部楼层 |阅读模式   江苏省徐州市
QQ图片20221008125337.png
  
窗口程序集名保 留  保 留备 注
程序集1   
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
变量名类 型静态数组备 注
输入多维矩阵类 
多维矩阵类 
标准迭代标准类 
中心多维矩阵类 
标签s多维矩阵类 
掩码多维矩阵类 
指数整数型 
c指数整数型 
整数型 
整数型 
dst多维矩阵类 
整数型 
整数型 
标签整数型 
bgr双精度小数型3
bgr1字节型3
bgr2双精度小数型3
w双精度小数型 
m整数型 
result多维矩阵类 
bgrC字节型0
bgrd双精度小数型3
输入 = 视觉_图像读取 (“C:\Users\hanyo\Desktop\66\501.jpg”, #读图_彩色 )
视觉_创建窗口 (“input”, #窗口_标准 )
视觉_显示图像 (“input”, 输入)
点 = 组装数据 (输入)
' //运行KMeans
标准.初始化 ( #迭代标准_精度#迭代标准_元素, 10, 0.1)
视觉_K均值 (点, 4, 标签s, 标准, 3, #K方法_PP_中心, 中心)
掩码 = 矩阵 (输入.行数 (), 输入.列数 (), #Cv无符号字节型_单通道, 0)
指数 = 输入.行数 () × 2 + 2
c指数 = 标签s.取元素 (指数, 0)
高 = 输入.行数 ()
宽 = 输入.列数 ()
输入.复制 (dst, )
变量循环首 (0, 高 - 1, 1, 行)
变量循环首 (0, 宽 - 1, 1, 列)
指数 = 行 × 宽 + 列
标签 = 标签s.取元素 (指数, 0)
判断 (标签 = c指数)  ' 背景
dst.置元素V (行, 列, { 0, 0, 0, 0, 0, 0 })
掩码.置元素 (行, 列, 0)
掩码.置元素 (行, 列, 255)

变量循环尾 ()
变量循环尾 ()
视觉_显示图像 (“mask”, 掩码)
视觉_显示图像 (“KMeans-Result”, dst)
' //背景替换为红色
result.初始化 (输入.行数 (), 输入.列数 (), 输入.类型 (), 标量 (0))
bgr2 [1] = 0
bgr2 [2] = 0
bgr2 [3] = 255
变量循环首 (0, 高 - 1, 1, 行)
变量循环首 (0, 宽 - 1, 1, 列)
m = 掩码.取元素 (行, 列)
判断 (m = 255)  ' //前景
bgrC = 输入.取元素8U (行, 列)
bgrd [1] = bgrC [1]
bgrd [2] = bgrC [2]
bgrd [3] = bgrC [3]
result.置元素V (行, 列, bgrd)
判断 (m = 0)  ' //背景
result.置元素V (行, 列, { 0, 0, 255 })
w = m ÷ 255
bgr1 = 输入.取元素8U (行, 列)
bgr [1] = bgr1 [1] × w + bgr2 [1] (1 - w)
bgr [2] = bgr1 [2] × w + bgr2 [2] (1 - w)
bgr [3] = bgr1 [3] × w + bgr2 [3] (1 - w)
result.置元素V (行, 列, bgr)

变量循环尾 ()
变量循环尾 ()
视觉_显示图像 (“背景替换”, result)
视觉_等待按键 (0)
返回 (0)  ' 可以根据您的需要返回任意数值
子程序名返回值类型公开备 注
组装数据多维矩阵类 
参数名类 型参考可空数组备 注
image多维矩阵类
变量名类 型静态数组备 注
samplecount整数型 
h整数型 
w整数型 
dims整数型 
points多维矩阵类 
index整数型 
row整数型 
col整数型 
bgr字节型0
w = image.列数 ()
h = image.行数 ()
samplecount = w × h
dims = image.通道数 ()
points.初始化 (samplecount, dims, #Cv小数型, 标量 (10))
变量循环首 (0, h - 1, 1, row)
变量循环首 (0, w - 1, 1, col)
index = row × w + col
bgr = image.取元素8U (row, col)
points.置元素 (index, 0, bgr [2])
points.置元素 (index, 1, bgr [3])
points.置元素 (index, 2, bgr [3])
变量循环尾 ()
变量循环尾 ()
返回 (points)


i支持库列表   支持库注释   
OpenCV(未知支持库)
spec特殊功能支持库

签到天数: 1 天

发表于 2024-3-8 20:22:54 | 显示全部楼层   河南省郑州市
1111111111111111111111
回复 支持 反对

使用道具 举报

签到天数: 10 天

发表于 2024-2-12 13:37:30 | 显示全部楼层   新疆维吾尔自治区巴音郭楞蒙古自治州
谢谢分享
回复 支持 反对

使用道具 举报

结帖率:85% (23/27)

签到天数: 5 天

发表于 2023-3-10 15:06:01 | 显示全部楼层   辽宁省阜新市
没有找到名为“多维矩阵类”的数据类型。怎么办?
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2022-12-16 22:08:45 | 显示全部楼层   山东省青岛市
正好需要!!!!!!!!!!!!!!!!!!!!!!!!!!!
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
发表于 2022-11-21 08:44:00 | 显示全部楼层   河北省秦皇岛市
感谢lz 新技能get
回复 支持 反对

使用道具 举报

签到天数: 4 天

发表于 2022-11-5 20:41:16 | 显示全部楼层   四川省南充市
很好我喜欢厉害了
回复 支持 反对

使用道具 举报

发表于 2022-10-21 11:33:12 | 显示全部楼层   湖北省随州市
没有找到名为“多维矩阵类”的数据类型。
回复 支持 反对

使用道具 举报

发表于 2022-10-21 10:51:42 | 显示全部楼层   湖北省随州市
模块发一下
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
发表于 2022-10-10 19:25:55 | 显示全部楼层   陕西省西安市
多维矩阵类 是啥模块的

点评

OpenCV   江苏省徐州市  发表于 2022-10-11 11:49
回复 支持 反对

使用道具 举报

结帖率:100% (7/7)
发表于 2022-10-8 22:09:31 | 显示全部楼层   广东省深圳市
支持开源!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表