当前位置: 首页 > 科技观察

AI去除马赛克好吗?

时间:2023-03-18 17:11:31 科技观察

大家好。有没有想过用AI技术去除马赛克?这个问题仔细想想还是挺难的,因为我们之前用的AI技术,不管是人脸识别还是OCR识别,至少可以人工识别。但是如果给你一张马赛克图片,你能还原吗?显然很难。如果人类无法恢复,如何教计算机恢复?记得我前几天写的一篇文章《用AI生成头像?》。在那篇文章中,我们训练了一个可以从任意随机数生成图像的DCGAN模型。由随机数作为像素生成的噪声图像模型GeneratenormalavatarsfromrandomnumbersDCGAN由两个模型组成:生成器模型和判别器模型。生成器模型的作用是从一组随机数中生成一张图片,图片和训练样本越接近越好,从而欺骗判别器模型,判别器模型需要不断改进防止生成器模型生成的图片被忽悠的判别能力。如果我们将上述生成器模型的输入从随机数更改为带有马赛克的图像,则输出将是没有马赛克的图像。是否可以训练去除马赛克的模型?接下来给大家分享一下如何训练马赛克去除模型,然后分享一个现成的工具。大家可以下载下来直接使用试试效果。1.Pix2pix+CycleGAN这里我们不使用上面介绍的DCGAN,而是使用两个更强大的模型Pix2pix和CycleGAN分别进行训练。Pix2pix是一种基于GAN的图像翻译算法。从马赛克图像到普通图像,本质上是一个翻译过程,类似于从一种语言到另一种语言的转换。Pix2pix模型翻译的效果和CycleGAN的实现只是简单地在不同域之间转换图像,而形状本身保持不变。CycleGAN模型文章为我们提供了数据集和完整的训练过程,可以帮助我们以更低的成本训练模型。一、下载数据集数??据集一共654M。然后,下载Paddle预训练模型预训练模型最后,分别训练Pix2pix和CycleGAN模型。Pix2pix模型pythongan/infer.py\--init_modeloutput/pix2pix/checkpoints/110/\--dataset_dir/home/aistudio/\--image_size256\--n_samples1\--crop_size256\--model_netPix2pix\--net_Gunet_256\--test_list/home/aistudio/test_list.txt\--output./infer_result/pix2pix/CycleGAN模型pythongan/infer.py--init_modeloutput/cyclegan/checkpoints/48/\--dataset_dir/home/aistudio/\--image_size256\--n_samples1\--crop_size256\--input_styleA\--test_list/home/aistudio/test_list.txt\--model_netCycleGAN\--net_Gresnet_9block\--g_base_dims32\--output./infer_result/cyclegan/训练完成后可以运行gan/infer.py文件比较这两个模型的马赛克去除效果。2.现成的工具如果你不想自己训练模型,这里有一个现成的项目分享给你。同样是基于语义分割和图像翻译,参考了Pix2pix和CycleGAN。项目地址:https://github.com/HypoX64/DeepMosaics/blob/master/README_CN.md针对Windows用户,作者提供免安装软件包,包含GUI界面。UI界面我们之前说过,这个技术还是比较有难度的,大家不要抱太大的期望。下面是实际去除效果。编解码的效果还是可以的,只是没有想象中那么完美。您可以下载并运行它进行尝试。