1332|10

452

帖子

2

资源

纯净的硅(初级)

使用Verilog给证件照换背景颜色 [复制链接]

本帖最后由 1nnocent 于 2022-9-25 11:45 编辑

    之前做图像缩放仿真验证时需要读取图片数据进行处理,vivado读取的是raw文件,现在想想能不能用来给证件照换个背景颜色,现在有空来试试。原理很简单,主要三个步骤:

    1、用PS打开图片,这里PS只用于查看图片分辨率以及背景颜色的具体像素值和格式转换(需要将图片转换成raw格式);

    2、Verilog读取像素值 ,并进行判断,把符合替换条件的像素值(可以使用PS查看)换成目标背景颜色的像素值;

    3、仿真运行,并输出替换后的文件,再次打开PS把输出的raw格式文件转换成需要的图片格式,至此就完成换背景操作啦。接下来看具体过程:

 

1、先在网上找个证件照

    这里不使用具体某人的证件照,我们 直接百度动物证件照,并保存下来,这里找了两张,先放上来。

 

input_dog_id_red.webp.jpg input_cat_id_black.jpeg

 

2、使用PS打开,查看相关信息,并保存为raw文件

    1、确定图片像素:418X557


image.png

 

    2、确定当前背景颜色像素值(这里使用吸管工具):  记录当前背景色的像素值:R197    G41    B28

 

image.png   image.png

 3、保存为raw文件:input_418x557_dog_red.raw

 

image.png  

2、使用Verilog对图像进行处理

    Verilog读取像素数据时进行判断,更改判断条件,并替换成目标像素。

    1、先修改分辨率:


image.png image.png

 2、修改判断条件:因为图片可能存在模糊现象,所以这里的判断过程需要给一个区间,左边是我们PS中读取的值。

 

image.png

  修改范围后:

 

image.png

    3、运行仿真:

image.png

4、仿真完成后PS打开输出的raw文件,查看图片质量,如果存在噪点可以用PS确定噪点的像素值,重复2、3、4步骤,直到达到预期效果。

 

image.png

  第一次仿真输出效果:

 

image.png

定位噪点像素值,继续仿真:可以多查看几个点的像素值,以便更好地确定判断条件范围。

 

image.png

进一步仿真输出效果:

 

output_418x557_dog_white.png

    太细节的地方好像不能处理得很好。这是目前最佳效果。

4、最后一步将满意的图片用PS转换成PNG等需要的格式

 

    猫也试一下,做个反面教材:黑色背景颜色不太好,猫的眼珠是黑的,换的时候也把眼珠换了(好像又解锁了新玩法),可能这就是拍证件照尽量不穿和背景颜色相近的原因。

 

output_cat_1080x1080_white.png

 

    最后附上代码: id_photo.rar (19.49 MB, 下载次数: 2)

回复

1199

帖子

0

资源

版主

现在这种快速更换背景的软件还是挺多的,例如美图秀秀

点评

纯属好奇试一试       。  详情 回复 发表于 2022-9-26 19:53

回复

1090

帖子

15

资源

版主

赞了 想法很好 代码里可以加上从边界开始的色彩值要一直连续才能替换。这样就避免了眼睛被替换了

点评

最近不是很有空,看看有没有其他网友有时间有兴趣的可以试试  详情 回复 发表于 2022-9-26 19:55

回复

2万

帖子

71

资源

管理员

比我们人工修图修的好 :)

点评

起码比我自己修得好哈哈哈哈       。    详情 回复 发表于 2022-9-26 19:56
个人签名

不管是哪年,都要加油!继续为中国电子行业做出小小的贡献吧! 扣扣 1206973913


回复

452

帖子

2

资源

纯净的硅(初级)

秦天qintian0303 发表于 2022-9-25 20:18 现在这种快速更换背景的软件还是挺多的,例如美图秀秀

纯属好奇试一试

 

 

 


回复

452

帖子

2

资源

纯净的硅(初级)

吾妻思萌 发表于 2022-9-26 06:46 赞了 想法很好 代码里可以加上从边界开始的色彩值要一直连续才能替换。这样就避免了眼睛被替换了

最近不是很有空,看看有没有其他网友有时间有兴趣的可以试试


回复

452

帖子

2

资源

纯净的硅(初级)

soso 发表于 2022-9-26 17:16 比我们人工修图修的好 :)

起码比我自己修得好哈哈哈哈

 

 

 

 


回复

5

帖子

0

资源

一粒金砂(中级)

感谢楼主,学习了!这就回去试试给我的证件照换底色

点评

边缘处理得可能不是很好,但是好像不影响使用,自己换了一个白底证件照报名健康管理师用  详情 回复 发表于 2022-10-8 11:05

回复

452

帖子

2

资源

纯净的硅(初级)

明月半倚深秋i 发表于 2022-10-3 14:55 感谢楼主,学习了!这就回去试试给我的证件照换底色

边缘处理得可能不是很好,但是好像不影响使用,自己换了一个白底证件照报名健康管理师用


回复

85

帖子

0

资源

一粒金砂(中级)

FPGA太难了,学不会啊!还是老实研究我的51和STM32吧!

回复

46

帖子

1

资源

一粒金砂(中级)

MARK!MARK!学习了,虽然很多软件都能做,但是用Verilog感觉很新颖!

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

相关帖子
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
    关闭
    站长推荐上一条 1/7 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表