苏州网站建设费用中企动力邮箱手机登录

张小明 2026/3/13 6:34:57
苏州网站建设费用,中企动力邮箱手机登录,给wordpress上锁,网站顶部轮播怎么做的DeepDream DeepDream 是一种艺术性的图像修改技术#xff0c;它使用了卷积神经网络学到的表示。DeepDream 由谷歌于2015 年夏天首次发布#xff0c;利用Caffe 深度学习库编写实现#xff08;比TensorFlow 首次公开发布还 要早几个月#xff09;a。它很快在互联网上引起了轰…DeepDreamDeepDream 是一种艺术性的图像修改技术它使用了卷积神经网络学到的表示。DeepDream由谷歌于2015 年夏天首次发布利用Caffe 深度学习库编写实现比TensorFlow 首次公开发布还要早几个月a。它很快在互联网上引起了轰动这要归功于它所生成的迷幻图片示例可参见图12-4图片中充满了算法生成的错觉式伪影、鸟的羽毛和狗的眼睛。这是DeepDream 卷积神经网络在ImageNet 上训练的副作用因为ImageNet 中狗和鸟的样本占了很大比例。DeepDream 算法与第9 章介绍的卷积神经网络滤波器可视化技术几乎相同二者都是反向运行卷积神经网络对卷积神经网络的输入做梯度上升以便将卷积神经网络靠近顶部某一层的某个滤波器的激活值最大化。DeepDream 的原理与之相似但有以下几点简单的区别。使用 DeepDream我们尝试将整个层的激活值最大化而不是将某个滤波器的激活值最大化因此需要将大量特征的可视化内容混合在一起。不是从空白、略带噪声的输入开始而是从一张现有图像开始因此所产生的效果能够抓住已经存在的视觉模式并以某种艺术方式将图像元素扭曲。输入图像是在不同的尺度叫作八度octave上进行处理的这可以提高可视化质量。我们来生成一些DeepDream 图像。用Keras 实现DeepDream我们首先获取一张用于DeepDream 的测试图像。我们使用美国北加州冬季崎岖海岸的景色如代码清单12-9 和图12-5 所示。代码清单12-9 获取测试图像fromtensorflowimportkerasimportmatplotlib.pyplotasplt base_image_pathkeras.utils.get_file(coast.jpg,originhttps://img-datasets.s3.amazonaws.com/coast.jpg)plt.axis(off)plt.imshow(keras.utils.load_img(base_image_path))接下来我们要使用预训练卷积神经网络。Keras 中有许多这样的卷积神经网络如VGG16、VGG19、Xception、ResNet50 等它们的权重都是在ImageNet 上预训练得到的。你可以用任意一个来实现DeepDream但你选择的基模型会影响可视化效果因为不同的模型架构会学到不同的特征。在最初发布的DeepDream 中使用的卷积神经网络是Inception 模型。在实践中人们已经知道Inception 能够生成漂亮的DeepDream 图像所以我们将使用Keras 内置的InceptionV3 模型如代码清单12-10 所示。代码清单12-10 将预训练的InceptionV3 模型实例化fromtensorflow.keras.applicationsimportinception_v3 modelinception_v3.InceptionV3(weightsimagenet,include_topFalse)我们使用预训练卷积神经网络来创建一个特征提取器模型返回各中间层的激活值如代码清单12-11 所示。对于每一层我们选定一个标量值用于加权该层对损失的贡献我们试图在梯度上升过程中将这个损失最大化。如果你想获得层名称的完整列表以选择要处理哪些层只需使用model.summary()。代码清单12-11 设置每一层对DeepDream 损失的贡献大小接下来我们要计算损失即在每个处理尺度的梯度上升过程中需要最大化的量如代码清单12-12 所示。在第9 章的滤波器可视化示例中我们试图将某一层某个滤波器的值最大化。这里我们要将多个层的全部滤波器激活值同时最大化。具体来说就是对一组靠近顶部的层的激活值的L2 范数进行加权求和然后将其最大化。选择哪些层以及它们对最终损失的贡献大小对生成的可视化效果有很大影响所以我们希望让这些参数易于配置。更靠近底部的层生成的是几何图案而更靠近顶部的层生成的则是从中能看出某些ImageNet 类别比如鸟或狗的图案。我们将随意选择4 层但后续你可以探索不同的配置。代码清单12-12 DeepDream 损失下面来设置在每个八度上运行的梯度上升过程如代码清单12-13 所示。你会发现它与第9 章的滤波器可视化技术是一样的。DeepDream 算法只是多尺度的滤波器可视化。代码清单12-13 DeepDream 梯度上升过程最后是DeepDream 算法的外层循环。首先我们定义一个列表其中包含处理图像的尺度也叫八度。我们将在3 个“八度”上处理图像。对于从小到大的每个八度我们将利用gradient_ascent_loop() 运行20 次梯度上升步骤以便将前面定义的损失最大化。在每个八度之间我们将图像放大40%也就是放大到1.4 倍也就是说首先处理小图像然后逐渐增大图像尺寸如图12-6 所示。我们还需要几个实用函数来加载和保存图像如代码清单12-14 所示。代码清单12-14 图像处理函数外层循环如代码清单12-15 所示。为避免在每次放大后丢失大量图像细节导致图像越来越模糊或像素化我们可以使用一个简单的技巧在每次放大后将丢失的细节重新注入图像中。这种方法之所以可行是因为我们知道原始图像放大到这个尺度应该是什么样子。给定较小的图像尺寸S 和较大的图像尺寸L我们可以计算出将原始图像调整为L 与将原始图像调整为S 之间的差异这个差异可以定量描述从S 到L 的细节损失。代码清单12-15 在多个连续的“八度”上运行梯度上升注意 由于原始Inception V3 网络是为识别299 × 299 图像中的概念而训练的而上述过程将图像尺寸缩小了一定比例因此DeepDream 实现对于尺寸在300 × 300 和400 × 400 之间的图像能够得到更好的结果。但不管怎样你都可以在任意尺寸和任意比例的图像上运行同样的代码。在GPU 上运行代码只需几秒。在测试图像上的梦境效果如图12-7 所示。我强烈建议你改变在损失中所使用的层从而探索各种可能得到的结果。神经网络中更靠近底部的层包含更加局部、不太抽象的表示得到的梦境图案看起来更像是几何图形。更靠近顶部的层能够得到更容易识别的视觉图案这些图案都基于ImageNet 中最常见的对象比如狗的眼睛、鸟的羽毛等。你可以随机生成layer_settings 字典中的参数快速探索不同的层组合。对于一张自制美味糕点的图像利用不同的层设置所得到的一系列结果如图12-8 所示。完整代码importnumpyasnpimporttensorflowastffromtensorflowimportkerasfromtensorflow.keras.applicationsimportinception_v3importmatplotlib.pyplotasplt# 最简单的DeepDream实现defsimple_deepdream_test():print(测试DeepDream...)# 1. 加载图像try:image_pathkeras.utils.get_file(coast.jpg,originhttps://img-datasets.s3.amazonaws.com/coast.jpg)print(f下载图像到:{image_path})except:print(无法下载图像请检查网络连接)return# 2. 加载和显示原始图像imgkeras.utils.load_img(image_path,target_size(300,400))img_arraykeras.utils.img_to_array(img)img_arraynp.expand_dims(img_array,axis0)plt.figure(figsize(8,6))plt.imshow(img)plt.title(原始图像)plt.axis(off)plt.show()# 3. 加载模型modelinception_v3.InceptionV3(weightsimagenet,include_topFalse)# 4. 选择层简化版本只用一个层layer_namemixed4layermodel.get_layer(layer_name)# 创建模型输出指定层的激活dream_modelkeras.Model(inputsmodel.input,outputslayer.output)# 5. 预处理图像preprocessed_imginception_v3.preprocess_input(img_array.copy())# 6. 计算激活和梯度withtf.GradientTape()astape:tape.watch(preprocessed_img)activationsdream_model(preprocessed_img)losstf.reduce_mean(activations)# 计算梯度gradstape.gradient(loss,preprocessed_img)# 7. 标准化梯度并更新图像grads/tf.math.reduce_std(grads)1e-8preprocessed_imggrads*0.1preprocessed_imgtf.clip_by_value(preprocessed_img,-1.0,1.0)# 8. 反处理图像resultpreprocessed_img.numpy()resultresult.reshape((300,400,3))result/2.0result0.5result*255.0resultnp.clip(result,0,255).astype(uint8)# 9. 显示结果plt.figure(figsize(10,5))plt.subplot(1,2,1)plt.imshow(img)plt.title(原始图像)plt.axis(off)plt.subplot(1,2,2)plt.imshow(result)plt.title(DeepDream效果单次迭代)plt.axis(off)plt.tight_layout()plt.show()print(测试完成!)if__name____main__:simple_deepdream_test()
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

医美行业网站建设ui设计培训多长时间能学会

还在为网络连接不稳定而中断电路设计进程感到困扰吗?CircuitJS1桌面版正是你需要的解决方案!这款基于NW.js开发的离线电路模拟器,让你在没有网络的环境下也能畅享专业的电路仿真体验。无论是电子爱好者、在校学生还是专业工程师,都…

张小明 2026/3/9 16:40:05 网站建设

网站成品免费下载成都app定制开发

恶意软件排查与系统维护实用指南 1. 恶意软件概述 恶意软件会引发诸多计算机问题,它总是执行违背用户利益的操作。有时它会悄然运行,不易被察觉;有时则会明显地暴露自己,如本章提到的恐吓软件。与许多合法软件不同,恶意软件常常会主动阻止自身被发现或移除。下面通过几个…

张小明 2026/3/10 2:39:25 网站建设

娱乐公司网站建设价格全球十大建筑设计事务所

Kotaemon为何成为企业级AI对话框架新宠 在金融合规审查中,一个错误的利率引用可能引发数百万损失;在医疗咨询场景里,一次模糊的药品说明足以危及患者安全。当大模型开始深度介入关键业务流程时,企业真正关心的问题不再是“它能不能…

张小明 2026/3/10 12:48:37 网站建设

四川住房建设和城乡建设厅假网站工程私人承包协议书

// 导入React核心库及所需的类型和Hooks // FC: FunctionComponent 函数组件类型,用于约束组件类型 // useReducer: 用于复杂状态管理的Hook,替代useState处理多状态/复杂逻辑 // useState: 基础状态管理Hook(本示例未实际使用,保…

张小明 2026/3/9 14:13:33 网站建设

英文网站建设cmswindows版本的wordpress

FreeBSD窗口管理器与桌面环境及办公软件全解析 1. 窗口管理器与桌面环境的区别 在FreeBSD系统中,KDE是较为流行的桌面环境,但并非唯一选择,还有众多从简单到复杂的替代方案。窗口管理器和桌面环境存在明显差异: - 功能特性 :像KDE这样的桌面环境通常比单纯的窗口管理…

张小明 2026/3/10 0:55:53 网站建设

用html做网站搜索框上海广告公司工资

Linux 文本查看全攻略 1. 文本查看基础 文本处理是 Linux 系统的核心功能之一,文本文件格式多样,包括英文文本、C 语言代码、保存的邮件消息或 HTML 文件等。普通文本文件不一定需要 .txt 或 .text 扩展名。若不确定文件内容是否为文本,可使用 file 命令来判断。 查…

张小明 2026/3/9 18:50:29 网站建设