ailab icon indicating copy to clipboard operation
ailab copied to clipboard

对于透明背景图片的优化效果不理想

Open pureGavin opened this issue 3 years ago • 5 comments

此项目对图片本身的的优化效果很好,不过对于某些透明背景的图片,优化后会有马赛克 image e8d9d16d6681e4343c3572493b59f9b

pureGavin avatar Mar 01 '22 03:03 pureGavin

此项目对图片本身的的优化效果很好,不过对于某些透明背景的图片,优化后会有马赛克 image e8d9d16d6681e4343c3572493b59f9b

32bit_2x @pureGavin 这个是我拿图1跑出来的结果,config: up2x-latest-denoise3x.pth tile=5 alpha=1 cache_mode=1 没有出现红圈马赛克的情况

你是用的哪个软件里面的RealCUGAN,设置的什么参数呢?

lj1995-computer-vision avatar Mar 01 '22 12:03 lj1995-computer-vision

此项目对图片本身的的优化效果很好,不过对于某些透明背景的图片,优化后会有马赛克 image e8d9d16d6681e4343c3572493b59f9b

32bit_2x @pureGavin 这个是我拿图1跑出来的结果,config: up2x-latest-denoise3x.pth tile=5 alpha=1 cache_mode=1 没有出现红圈马赛克的情况

你是用的哪个软件里面的RealCUGAN,设置的什么参数呢?

我用的是这个版本的:20220226 参数是文件中默认的,我没改,但是我把half改成了False,因为我暂时没有GPU :( 还有我用你给出的参数重新测试了一下,发现还是不行,依然有我之前说的马赛克情况

pureGavin avatar Mar 02 '22 06:03 pureGavin

此项目对图片本身的的优化效果很好,不过对于某些透明背景的图片,优化后会有马赛克 image e8d9d16d6681e4343c3572493b59f9b

32bit_2x @pureGavin 这个是我拿图1跑出来的结果,config: up2x-latest-denoise3x.pth tile=5 alpha=1 cache_mode=1 没有出现红圈马赛克的情况

你是用的哪个软件里面的RealCUGAN,设置的什么参数呢?

我尝试使用最新版本的:RealCUGAN_for_win10_torch1.10.0cu111_20220227.zip 结果还是一样的,这回我使用了更多有半透明的图片当作验证集,结果如下 1000000 1000000_2x_tile5_cache1_alpha1 100001 100001_2x_tile5_cache1_alpha1 500007 500007_2x_tile5_cache1_alpha1 之前的翅膀的图片也还是会有马赛克,值得注意的是全实体的图片是没什么问题的,但是有些半透明的类似于火焰焰尾的图片优化后会直接变成全实体的图片,另外下面是我的config.py文件的内容 ########################################## #################通用设置################# ########################################## #超分倍率 scale=2 #参数路径,可更换 #降噪版(denoise):如果原片噪声多,压得烂,推荐使用;目前2倍模型支持了3个降噪等级; #无降噪版(no-denoise):如果原片噪声不多,压得还行,但是想提高分辨率/清晰度/做通用性的增强、修复处理,推荐使用; #保守版(conservative):如果你担心丢失纹理,担心画风被改变,担心颜色被增强,总之就是各种担心AI会留下浓重的处理痕迹,推荐使用该版本。 model_path2 = "weights_v3/up2x-latest-denoise3x.pth" model_path3 = "weights_v3/up3x-latest-denoise3x.pth" model_path4 = "weights_v3/up4x-latest-denoise3x.pth" #half:早期显卡开半精度不会提速,但是开半精度可以省显存;>=20系N卡无脑选True即可 half=False #tile越大,越省显存,速度越慢 tile=5 #cache_mode:如果显存在爆炸的边界,还可以挣扎,选0或1(都是无损),1比0耗时增长15%,更省显存;如果显存显然无法挣扎(比如只有2G显存想超>=720P,或者输入超大分辨率的图(例如4K)),选2或3;2耗时+25%,仅在有景深虚化的图里增加5%误差;3耗时增加150%但无损 cache_mode=1 #alpha越小AI修复程度、痕迹越小,越模糊;alpha越大处理越烈,越锐化,色偏(对比度、饱和度增强)越大 #可调区间:(0.7,1.3),默认为1不调整 alpha=1 #超分模式,视频or图像文件夹 mode="image"#video#image ############################################ #################超图像设置################# ############################################ #0代表卡号,多卡的话可以写不同config并行开,显存多利用率打不满的话一张卡也可以开多个 #如果要用CPU跑,""里填cpu device="cuda:0" input_dir="input_dir"#输入图像路径 output_dir="output_dir"#超分图像输出路径 ############################################ #################超视频设置################# ############################################ inp_path=r"C:\Users\liujing\Desktop\Z\119191291_nb2-1-32.mp4" opt_path=r"C:\Users\liujing\Desktop\Z\output.mp4" #线程数:量力而行,填小了利用率低,填大了爆显存 nt=2 #显卡数 n_gpu=1 #别乱动 p_sleep=(0.005,0.012) decode_sleep=0.002 #编码参数,不懂别乱动;通俗来讲,crf变低=高码率高质量,slower=低编码速度高质量+更吃CPU,CPU不够应该调低级别,比如slow,medium,fast,faster encode_params=['-crf', '21', '-preset', 'medium']

pureGavin avatar Mar 02 '22 07:03 pureGavin

此项目对图片本身的的优化效果很好,不过对于某些透明背景的图片,优化后会有马赛克 image e8d9d16d6681e4343c3572493b59f9b

32bit_2x @pureGavin 这个是我拿图1跑出来的结果,config: up2x-latest-denoise3x.pth tile=5 alpha=1 cache_mode=1 没有出现红圈马赛克的情况 你是用的哪个软件里面的RealCUGAN,设置的什么参数呢?

我用的是这个版本的:20220226 参数是文件中默认的,我没改,但是我把half改成了False,因为我暂时没有GPU :( 还有我用你给出的参数重新测试了一下,发现还是不行,依然有我之前说的马赛克情况

32bit_2x 156311897-1b3ee7b3-f1a4-4bff-a4ae-a4411edf556d_2x 156311994-c4981aa2-ea77-4db7-be87-d049d60e29a9_2x 156312053-26ca81f6-1eea-4306-9baa-e264d8c11522_2x

@pureGavin 整了一晚上对带透明通道图像的转换(4通道转3通道),总算是成功了,不过,最早的那个图,依然没有出现马赛克。 补丁包传到github-release-20220227版本分支里面了,你试试看?

lj1995-computer-vision avatar Mar 02 '22 16:03 lj1995-computer-vision

此项目对图片本身的的优化效果很好,不过对于某些透明背景的图片,优化后会有马赛克 image e8d9d16d6681e4343c3572493b59f9b

32bit_2x @pureGavin 这个是我拿图1跑出来的结果,config: up2x-latest-denoise3x.pth tile=5 alpha=1 cache_mode=1 没有出现红圈马赛克的情况 你是用的哪个软件里面的RealCUGAN,设置的什么参数呢?

我用的是这个版本的:20220226 参数是文件中默认的,我没改,但是我把half改成了False,因为我暂时没有GPU :( 还有我用你给出的参数重新测试了一下,发现还是不行,依然有我之前说的马赛克情况

32bit_2x 156311897-1b3ee7b3-f1a4-4bff-a4ae-a4411edf556d_2x 156311994-c4981aa2-ea77-4db7-be87-d049d60e29a9_2x 156312053-26ca81f6-1eea-4306-9baa-e264d8c11522_2x

@pureGavin 整了一晚上对带透明通道图像的转换(4通道转3通道),总算是成功了,不过,最早的那个图,依然没有出现马赛克。 补丁包传到github-release-20220227版本分支里面了,你试试看?

没想到你半夜了还在改代码,让我感觉我有点儿像是产品经理 :p 言归正传,这次的更新应当说是基本修复了之前说的透明通道图像的问题,但是又衍生出了新的问题,就是图像识别本身的问题,我直接放图 30003 30003_2x 50001 50001_2x 100005 100005_2x 100006 100006_2x 可以看到对于原图的透明位置的优化是很好的,但是第一张图片中的人物实体部分被错误的识别成了透明图像,后面三张图片不知道是不是因为原图就很小的关系,从原尺寸来看是很像的,但是放大了以后再来看可以说是丢失了很多细节(没改透明通道之前的版本对于这种小图片的优化是没有这种问题的) 另外关于翅膀的那张图片,我这里优化完全出错了 :( 如下图所示 20220302135329 20220302135329_2x 我都不知道应该怎么形容这种问题了…… 另外看到你半夜还在改代码,感觉很辛苦,想想看二月份出的字节跳动那个哥们儿,好像也是视觉算法工程师,真是令人惋惜,我也是从事过人工智能方面的工作的(目标检测、物体识别),明白这行的辛苦,希望作者多多保重

pureGavin avatar Mar 03 '22 02:03 pureGavin