Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
小呀小帅哥 2494e1a611 | 1 year ago | |
---|---|---|
main.ipynb | 1 year ago | |
readme.md | 1 year ago |
参考论文:Reference-Based Sketch Image Colorization using
Augmented-Self Reference and Dense Semantic Correspondence(论文PDF已经放在项目中了)
接下来请随着名侦探“小呀小帅哥”视角 主要根据一篇论文剖析基于参考图给线稿上色任务,从宏观的视角去重新审视思考。
给出一张线稿A,给出一张已经上色好的图片B,我们需要让模型把B的色彩合理的迁移到A的线稿架构上得到最终图片C,那么对于C来说,A提供的是主要结构性信息,B提供的是色彩信息,并且模型需要让B的色彩对于A的结构进行一个自适应扭曲。
那么这个适合就需要提一提我们的成对数据集了,线稿和对应的上色图,这里展示一下:
上色图和线稿都是512*512大小,这是一张图片,h和w分别为512,1024.那么色彩参考图就是取W维度的前512然后进行TPS插值扭曲,线稿就是W维度后512,然后为了好训练,我把色彩参考图和线稿都缩小为256*256
好了这就是我们的数据集,注意如果我们直接把色彩参考图就等于上色成功的图片,这样模型就会很大依赖色彩参考图的信息,而不会把色彩基于线稿结构进行扭曲,但是我们实际测试的过程中怎么会出现这种情况呢?所以会出现这种结果,以下是错误结果展示:
本项目主要基于这篇论文进行复现展示
接下来我选取重点进行分析讲解:
就是我们不能让模型学习到看到苹果的样子就是红色的,也就是苹果现实过程中也有可能是黄色的,或者绿色的。避免模型有这种色彩偏见。
解决这个问题,就是给图像I增加一个色彩噪声(a(*)),得到Igt作为ground truth,这样就可以极大的缓解这个色彩偏见的问题,算一种数据增强吧。
但是实际我自认为数据集够大,1w多张照片,于是就没有进行这步操作了,其实主要是懒得找这部分代码,哈哈哈哈。
如果输入的参考图(提供色彩信息)和Ground Truth一样,那么模型就会很怠惰的大幅度依赖参考图的结构信息,就是不能把参考图的结构和色彩信息区分开,这个是一大痛点,因为在测试的过程中参考图和模型的空间结构信息是差距很大的,也就是说我们需要让模型有把参考图按照线稿结构扭曲的能力。
因此我们不能把Igt当作参考图,我们需要给Igt添加一个空间扭曲这样得到的结果为参考图,这个空间扰动就是通过s(*)TPS(the thin plate splines)实现的.
就是qkv的思想,q是线稿结构信息,k和v为参考图特征信息。就是让色彩信息基于线稿结构信息进行扭曲罢了。
这个trip部分约束的是q和k部分应该也有s(*)空间扭曲的信息,这个部分我没怎么看懂。
其他就是VGG的特征对齐,生成图片和GT的MSELoss,利用Gram矩阵的style loss,还有GAN的对抗loss。
我参考的github代码(pytorch):https://github.com/seungjae-won/paper-to-code-Reference-Based-Sketch-Image-Colorization/blob/master/model.py
具体一键运行请在AI Studio中运行:基于参考图给线稿上色项目V2(SCFT),不吹不黑,你值得拥有 - 飞桨AI Studio (baidu.com)
it is time to show,基于SCFT论文的根据参考图上色项目
Jupyter Notebook
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》