想要训练输出像素的神经网络,具体实现上是怎么样的?

2022-05-10 21:10:38 +08:00
 Richard14

深度学习入门教材里看了蛮多分类,还有线性回归之类的例子,比如一个神经网络做成 10 个输出,这个很好理解,但是比如想要实现自动识别并涂白漫画的对话框这种,需要输出一个跟原图一样大的图片,它的输出和评价效果的函数应该怎么设计呢?论坛老哥们有没有什么好上手的例子推荐的,不是很理解这个过程。

1881 次点击
所在节点    问与答
15 条回复
Ediacaran
2022-05-10 21:13:22 +08:00
像素标注?识别目标并识别出所有目标所在像素
lonewolfakela
2022-05-10 21:27:36 +08:00
lonewolfakela
2022-05-10 21:30:35 +08:00
当然上述的 GAN 适合诸如“生成人脸”这种比较倾向于彻底“无中生有”的任务……像你说的那种涂白之类的对原图做一些小修改的模型,可能会更适合用生成结果和标准答案求 PSNR 或者类似的东西作为损失函数直接训
zcf0508
2022-05-10 22:12:19 +08:00
直接用原图和一张标记了对话框的黑白二值图做训练就可以了,损失用分类交叉熵,不过如果你要求精度的话可能会需要比较大量的图片。
Richard14
2022-05-11 02:27:36 +08:00
@zcf0508 分类交叉熵是指,比如一般漫画现在都是 800 万或者 1000 万像素一张图,然后那么神经网络输出 800 万结果然后做交叉熵这种感觉吗?

@lonewolfakela psnr 这类在 torch 里有自带的实现么,还是要我自己去实现,感觉很难搞啊
Liyiw
2022-05-11 07:27:38 +08:00
你需要的是 gan
zcf0508
2022-05-11 09:56:22 +08:00
@Richard14 是的,你可以理解成给这 800 万的每个像素点做分类。但是这个精度实在太高了,你还是需要把图片压缩到合理的精度,比如 224px 宽度,然后再去做训练,最后再把结果放大会 800 万像素的精度。
Richard14
2022-05-11 22:10:44 +08:00
@zcf0508 现在想要实现的效果就是把漫画对话框自动涂白(并且普适性强一些,网上漫画很多不是数字版),感觉缩到 224 再放大的方案不太能满足需求,边缘处理的不是很好,我的 cv 方面的知识也不知道有什么可以配套的算法能做到放大后再提高精度
shm7
2022-05-19 16:50:00 +08:00
干 GAN !
KJR5OR04CnCiWf02
2022-05-19 21:03:52 +08:00
漫画对话框自动涂白 这个是为了啥?不明白楼主的用意,我对这个应用场景倒是很好奇的。
ruxuan1306
2022-05-19 21:08:39 +08:00
不用 GAN 那么端到端,我感觉是一个目标检测或语义分割任务,网络只负责输出文字区域,之后其它程序涂白即可。

https://github.com/facebookresearch/detectron2
https://github.com/PaddlePaddle/PaddleHub/blob/release/v2.2/modules/README_ch.md#%E5%9B%BE%E5%83%8F
c0xt30a
2022-05-19 23:14:26 +08:00
自己手工标注几千张估计就差不多能训练了吧。你的网络输入是这张图片,输出可以是同样大小的只有 0 和 1 两种数值的图片。
网络很简单,感觉随便一个 U-Net 或者 U-Net++ 就可以了。
输出可以先试试交叉熵。表现不好的话再试下 weighted cross entropy ,balanced cross entropy , focal loss 之类的。
如果上边 distribution based loss 表现不行的话,还有 region based loss/boundary based loss/compounded loss 等等在等着你去尝试。
Richard14
2022-05-20 11:26:09 +08:00
@ppppppp123 这有什么不明白的,太常见的需求了,日文漫画涂白换成中文啊
KJR5OR04CnCiWf02
2022-05-20 15:10:23 +08:00
@Richard14 我知道了,是生番的本地化是吧?
InvincibleDream
2022-05-20 16:47:02 +08:00
建议查询一下图像语义分割相关工作

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/852062

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX