Real-Time Rendering——9.11 Wave Optics BRDF Models波动光学BRDF模型

2023-11-15

The models we have discussed in the last few sections rely on geometrical optics,which treats light as propagating in rays rather than waves. As discussed on page 303,geometrical optics is based on the assumption that any surface irregularities are either smaller than a wavelength or larger than about 100 wavelengths.

我们在最后几节中讨论的模型依赖于几何光学,它将光视为以射线而不是波的形式传播。如第303页所述,几何光学是基于任何表面不规则性小于一个波长或大于约100个波长的假设。

Real-world surfaces are not so obliging. They tend to have irregularities at all scales, including the 1–100 wavelength range. We refer to irregularities with such sizes as nanogeometry to distinguish them from the microgeometry irregularities discussed in earlier sections, which are too small to be individually rendered but larger than 100 light wavelengths. The effects of nanogeometry on reflectance cannot be modeled by geometrical optics. These effects depend on the wave nature of light and wave optics (also called physical optics) is required to model them.

现实世界的表面并不那么友好。它们在所有尺度上都有不规则性,包括1-100波长范围。我们将这种大小的不规则体称为纳米几何不规则体,以区别于前面讨论的微几何不规则体,后者太小而不能单独渲染,但大于100个光波长。纳米几何对反射率的影响不能用几何光学来模拟。这些效果取决于光的波动性质,需要波动光学(也称为物理光学)来模拟它们。

Surface layers, or films, with thicknesses close to a light wavelength also produce optical phenomena related to the wave nature of light.

厚度接近光波长的表层或薄膜也会产生与光的波动性质相关的光学现象。

In this section we touch upon wave optics phenomena such as diffraction and thinfilm interference, discussing their (sometimes surprising) importance in realistically rendering what otherwise can seem to be relatively mundane materials.

在这一节中,我们将触及波动光学现象,如衍射和薄膜干涉,讨论它们在真实渲染看起来相对平凡的材质时的重要性(有时令人惊讶)。

9.11.1 Diffraction Models衍射模型

Nanogeometry causes a phenomenon called diffraction. To explain it we make use of the Huygens-Fresnel principle, which states that every point on a wavefront (the set of points that have the same wave phase) can be treated as the source of a new spherical wave. See Figure 9.44. When waves encounter an obstacle, the Huygens-Fresnel principle shows that they will bend slightly around corners, which is an example of diffraction. This phenomenon cannot be predicted by geometrical optics. In the case of light incident on a planar surface, geometrical optics does correctly predict that light will be reflected in a single direction. That said, the Fresnel-Huygens principle provides additional insight. It shows that the spherical waves on the surface line up just right to create the reflected wavefront, with waves in all other directions being eliminated through destructive interference. This insight becomes important when we look at a surface with nanometer irregularities. Due to the different heights of the surface points, the spherical waves on the surface no longer line up so neatly. See Figure 9.45.

纳米几何导致了一种叫做衍射的现象。为了解释它,我们利用惠更斯-菲涅耳原理,该原理指出波前上的每一点(具有相同波相位的点的集合)都可以被视为新球面波的源。参见图9.44。当波遇到障碍物时,惠更斯-菲涅耳原理表明,它们会在拐角处轻微弯曲,这就是衍射的一个例子。这种现象是几何光学无法预测的。在光入射到平面表面的情况下,几何光学确实正确地预测了光将在单一方向上反射。也就是说,菲涅耳-惠更斯原理提供了额外的见解。它表明,表面上的球面波排列得恰到好处,形成了反射波阵面,而所有其他方向的波都通过相消干涉被消除了。当我们观察具有纳米不规则性的表面时,这种见解变得很重要。由于表面点的高度不同,表面的球面波不再排列得那么整齐。参见图9.45。

Figure 9.44. To the left, we see a planar wavefront propagating in empty space. If each point on the wavefront is treated as the source of a new spherical wave, the new waves interfere destructively in all directions except forward, resulting in a planar wavefront again. In the center, the waves encounter an obstacle. The spherical waves at the edge of the obstacle have no waves to their right that destructively interfere with them, so some waves diffract or “leak” around the edge. To the right, a planar wavefront is reflected from a flat surface. The planar wavefront encounters surface points on the left earlier than points on the right, so the spherical waves emitting from surface points on the left have had more time to propagate and are therefore larger. The different sizes of spherical wavefronts interfere constructively along the edge of the reflected planar wavefront, and destructively in other directions.

图9.44。在左边,我们看到一个平面波前在真空中传播。如果波前上的每一点都被视为一个新的球面波的来源,这个新的球面波会在除了前进方向之外的所有方向上相消干涉,再次产生一个平面波前。在中心,波浪遇到一个障碍物。障碍物边缘的球面波右侧没有破坏性干扰它们的波,因此一些波在边缘周围衍射或“泄漏”。平面波阵面从平面反射到右边。平面波前遇到左侧表面点的时间比遇到右侧表面点的时间早,因此从左侧表面点发出的球面波有更多的时间传播,因此更大。不同大小的球面波前沿着反射平面波前的边缘相长干涉,而在其他方向相消干涉。

Figure 9.45. On the left we see planar wavefronts incident to a surface with rough nanogeometry. In the center we see the spherical waves formed on the surface according to the Fresnel-Huygens principle. On the right we see that after constructive and destructive interference has occurred, some of the resulting waves (in red) form a planar reflected wave. The remainder (in purple) are diffracted, with different amounts of light propagating in each direction, depending on wavelength. 

图9.45。在左边,我们看到入射到粗糙纳米几何表面的平面波前。在中心,我们看到根据菲涅耳-惠更斯原理在表面上形成的球面波。在右边,我们看到在发生相长和相消干涉后,一些合成波(红色)形成了平面反射波。其余的(紫色)被衍射,根据波长的不同,在每个方向上传播的光量不同。

As the figure shows, light is scattered in different directions. Some portion of it is specularly reflected, i.e., adds up to a planar wavefront in the reflection direction. The remaining light is diffracted out in a directional pattern that depends on certain properties of the nanogeometry. The division between specularly reflected and diffracted light depends on the height of the nanogeometry bumps, or, more precisely, on the variance of the height distribution. The angular spread of diffracted light around the specular reflection direction depends on the width of the nanogeometry bumps relative to the light wavelength. Somewhat counter-intuitively, wider irregularities cause a smaller spread. If the irregularities are larger than 100 light wavelengths, the angle between the diffracted light and the specularly reflected light is so small as to be negligible. Irregularities of decreasing size cause a wider spread of diffracted light, until the irregularities become smaller than a light wavelength, at which point no diffraction occurs.

如图所示,光向不同的方向散射。它的一部分被镜面反射,即在反射方向上形成平面波前。剩余的光以定向模式衍射出去,这取决于纳米几何的某些特性。镜面反射光和衍射光之间的划分取决于纳米几何凸起的高度,或者更准确地说,取决于高度分布的变化。围绕镜面反射方向的衍射光的角展度取决于纳米几何凸起相对于光波长的宽度。有些与直觉相反,更大的不规则性会导致更小的价差。如果不规则性大于100个光波长,衍射光和镜面反射光之间的角度小到可以忽略不计。尺寸减小的不规则性导致衍射光的扩散更广,直到不规则性变得小于光波长,此时不发生衍射。

Diffraction is most clearly visible in surfaces with periodic nanogeometry, since the repeating patterns reinforce the diffracted light via constructive interference, causing a colorful iridescence. This phenomena can be observed in CD and DVD optical disks and certain insects. While diffraction also occurs in non-periodic surfaces, the computer graphics community has assumed for many years that the effect is slight. For this reason, with a handful of exceptions [89, 366, 686, 1688], the computer graphics literature has mostly ignored diffraction for many years.

在具有周期性纳米几何的表面上,衍射最为清晰可见,因为重复的图案通过相长干涉增强了衍射光,从而产生了彩色的彩虹色。这种现象可以在CD和DVD光盘以及某些昆虫身上观察到。虽然衍射也发生在非周期性表面,但计算机图形社区多年来一直认为这种影响很小。由于这个原因,除了少数例外[89,366,686,1688],计算机图形学文献多年来大多忽略了衍射。

However, recent analysis of measured materials by Holzschuch and Pacanowski [762] has shown that significant diffraction effects are present in many materials,and may explain the continuing difficulty of fitting these materials with current models. Follow-up work by the same authors [763] introduced a model combining microfacet and diffraction theory, via the use of the general microfacet BRDF (Equation 9.26) with a micro-BRDF that accounts for diffraction. In parallel, Toisoul and Ghosh [1772, 1773] presented methods for capturing the iridescent diffraction effects resulting from periodic nanogeometry, and for rendering them in real time with point light sources as well as image-based lighting.

然而,Holzschuch和Pacanowski [762]最近对测量材料的分析表明,许多材料中存在显著的衍射效应,这可能解释了用当前模型拟合这些材料的持续困难。相同作者的后续工作[763]介绍了一种结合微法和衍射理论的模型,通过使用一般微法BRDF(方程9.26)和考虑衍射的微BRDF。与此同时,Toisoul和Ghosh [1772,1773]提出了捕捉周期性纳米几何产生的虹彩衍射效应的方法,以及使用点光源和基于图像的照明实时渲染这些效应的方法。

9.11.2 Models for Thin-Film Interference薄膜干涉模型

Thin-film interference is a wave optics phenomenon that occurs when light paths reflecting from the top and bottom of a thin dielectric layer interfere with each other.See Figure 9.46.

薄膜干涉是一种波动光学现象,当从薄电介质层的顶部和底部反射的光路相互干涉时就会发生这种现象。参见图9.46。

 Figure 9.46. Light incident to a thin film on top of a reflective substrate. Besides the primary reflection, there are multiple paths of light refracting, reflecting from the substrate, and either reflecting from the inside of the top thin film surface or refracting through it. These paths are all copies of the same wave, but with short phase delays caused by difference in path length, so they interfere coherently with each other.

图9.46。光入射到反射衬底顶部的薄膜上。除了初级反射之外,还有多条路径的光从衬底折射、反射,或者从顶部薄膜表面的内部反射或者折射通过它。这些路径都是同一个波的副本,但由于路径长度不同,相位延迟较短,因此它们会相互相干干扰。

The different wavelengths of light either interfere constructively or destructively,depending on the relationship between the wavelength and the path length difference.Since the path length difference changes with angle, the end result is an iridescent color shift as different wavelengths transition between constructive and destructive interference.

不同波长的光相长干涉或相消干涉,这取决于波长和光程差之间的关系。由于光程差随角度变化,最终结果是不同波长在相长干涉和相消干涉之间转换时产生彩虹色偏移。

The reason that the film needs to be thin for this effect to occur is related to the concept of coherence length. This length is the maximum distance by which a copy of a light wave can be displaced and still interfere coherently with the original wave. This length is inversely proportional to the bandwidth of the light, which is the range of wavelengths over which its spectral power distribution (SPD) extends. Laser light, with its extremely narrow bandwidth, has an extremely long coherence length. It can be miles, depending on the type of laser. This relationship makes sense, since a simple sine wave displaced by many wavelengths will still interfere coherently with the original wave. If the laser was truly monochromatic, it would have an infinite coherence length, but in practice lasers have a nonzero bandwidth. Conversely, light with an extremely broad bandwidth will have a chaotic waveform. It makes sense that a copy of such a waveform needs to be displaced only a short distance before it stops interfering coherently with the original.

为了产生这种效果,薄膜需要很薄的原因与相干长度的概念有关。这个长度是一个光波的副本可以被移动但仍能与原波相干干涉的最大距离。这个长度与光的带宽成反比,光的带宽是其光谱功率分布(SPD)延伸的波长范围。带宽极窄的激光具有极长的相干长度。它可以是英里,取决于激光的类型。这种关系是有意义的,因为一个简单的正弦波被许多波长移位后,仍会与原始波相干干涉。如果雷射真的是单色的,那麽它的同调长度就会无限长,但实际上雷射的频宽并不为零。反之,带宽极宽的光会出现混沌波形。这种波形的拷贝只需移动一小段距离,就能停止与原始波形的相干干扰,这是有道理的。

In theory, ideal white light, which is a mixture of all wavelengths, would have a coherence length of zero. However, for the purposes of visible-light optics, the bandwidth of the human visual system (which senses light only in the 400–700 nm range) determines the coherence length, which is about 1 micrometer. So, in most cases the answer to the question “how thick can a film get before it no longer causes visible interference?” is “about 1 micrometer.”

理论上,理想的白光是所有波长的混合,其相干长度为零。然而,出于可见光光学的目的,人类视觉系统的带宽(仅感知400-700nm范围内的光)决定了相干长度,约为1微米。因此,在大多数情况下,对于“薄膜可以厚到什么程度才能不再产生可见的干涉”这个问题的答案是是“大约1微米”

Similarly to diffraction, for many years thin-film interference was thought of as a special case effect that occurs only in surfaces such as soap bubbles and oil stains. However, Akin [27] points out that thin-film interference does lend a subtle coloration to many everyday surfaces, and shows how modeling this effect can increase realism.See Figure 9.47. His article caused the level of interest in physically based thin-film interference to increase considerably, with various shading models including Render-Man’s PxrSurface [732] and the Imageworks shading model [947] incorporating support for this effect.

与衍射相似,多年来薄膜干涉被认为是一种特殊情况,只发生在表面,如肥皂泡和油渍。然而,Akin [27]指出,薄膜干涉确实给许多日常表面带来了微妙的色彩,并展示了如何模拟这种效果可以增加真实感。见图9.47。他的文章引起了人们对基于物理的薄膜干涉的兴趣,包括Render-Man的PxrSurface [732]和Imageworks着色模型[947]在内的各种着色模型都支持这种效果。

Figure 9.47. A leather material rendered without (on the left) and with (on the right) thin-film interference. The specular coloration caused by thin-film interference increases the realism of the image. (Image by Atilla Akin, Next Limit Technologies [27].) 

图9.47。一种皮革材质,渲染时没有(左侧)和有(右侧)薄膜干涉。由薄膜干涉引起的镜面着色增加了图像的真实性。(图片由下一个极限技术公司Atilla Akin提供。)

Thin-film interference techniques suitable for real-time rendering have existed for some time. Smits and Meyer [1667] proposed an efficient method to account for thinfilm interference between the first- and second-order light paths. They observe that the resulting color is primarily a function of the path length difference, which can be efficiently computed from the film thickness, viewing angle, and index of refraction.Their implementation requires a one-dimensional lookup table with RGB colors. The contents of the table can be computed using dense spectral sampling and converted to RGB colors as a preprocess, which makes the technique quite fast. In the game Call of Duty: Infinite Warfare, a different fast thin-film approximation is used as part of a layered material system [386]. These techniques do not model multiple bounces of light in the thin film, as well as other physical phenomena. A more accurate and computationally expensive technique, yet still targeted at real-time implementation,is presented by Belcour and Barla [129].

适用于实时渲染的薄膜干涉技术已经存在了一段时间。Smits和Meyer [1667]提出了一种有效的方法来解释一阶和二阶光路之间的薄膜干涉。他们观察到,最终的颜色主要是光程差的函数,光程差可以通过薄膜厚度、视角和折射率有效地计算出来。它们的实现需要具有RGB颜色的一维查找表。该表的内容可以使用密集光谱采样来计算,并作为预处理转换为RGB颜色,这使得该技术非常快。在游戏《使命召唤:无限战争》中,一种不同的快速薄膜近似被用作分层材料系统的一部分[386]。这些技术没有模拟薄膜中的多次光反射以及其他物理现象。Belcour和Barla [129]提出了一种更精确且计算成本更高的技术,但仍以实时实施为目标。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Real-Time Rendering——9.11 Wave Optics BRDF Models波动光学BRDF模型 的相关文章

  • STM32初学入门笔记(3):STM32CubeMX配置STM32实现多通道ADC+DMA读取模拟量

    模拟信号的读取是我们在做很多项目是都要用到的 而模拟量的读取就要依赖于ADC数模转换器 对于初学者 学习使用ADC可以很大的帮助以后的STM32学习 目录 ADC简介 DMA简介 工程开始 STM32CubeMX配置区 配置外部时钟 配置调
  • Git 开发必备 .gitignore 详解!【建议收藏】

    作者 Linux猿 简介 CSDN博客专家 C C 面试 刷题 算法尽管咨询我 关注我 有问题私聊 关注专栏 Linux 优质好文持续更新中 目录 一 为什么使用 gitignore 二 使用规则 2 1 注释 2 2 忽略文件 2 3 忽
  • 移动支付那点事儿

    关于本文支付相关的源码详见我的开源项目MobilePayment 前言 移动支付其实是非常简单的 因为只要按照第三方的文档来就行了 所以在本次分享中 其实更像是一次开发的纪要 当然也有一些看点 做过支付的人都知道支付的难点其实是在第三方文档
  • 狂神说Go语言学习笔记(一)

    狂神说Go语言学习笔记 二 狂神说Go语言学习笔记 三 狂神说Go语言学习笔记 四 一 Go语言的发展史 二 Go语言能做什么 三 Go语言环境安装 下载地址 国外网站太慢 我们使用中文网进行下载 Go下载 Go语言中文网 Golang中文
  • 海伯利安生态内用户如何实现资产跨链?意义何在!

    随着ERC20高额的转账Gas费和网络拥堵问题日益突显 越来越多的用户感受到了前所未有的高操作成本 直呼转不起账了 没法玩了 那么为了减缓用户压力 海伯利安技术团队目前正在紧张地部属基于Heco生态链与Atlasl链之间的跨链桥 帮助用户在
  • Python制作【大麦网】抢票程序,看演唱会再也不怕没票了

    前言 大麦网 是中国综合类现场娱乐票务营销平台 业务覆盖演唱会 话剧 音乐剧 体育赛事等领域 但是因为票数有限 还有黄牛们不能丢了饭碗 所以导致了 很多人都抢不到票 那么 今天带大家用Python来制作一个自动抢票的脚本小程序 知识点 面向
  • PyTorch错误收集与解决方法

    PyTorch错误收集与解决方法 文章目录 PyTorch错误收集与解决方法 RNN的初始状态在多GPU训练报错 RuntimeError module must have its parameters and buffers on dev
  • matlab中怎么获取文件路径,matlab获取文件路径和读写二进制文件

    1 matlab中处理路径和文件名 主要用到2个函数 pathstr name ext versn fileparts filename fileparts函数返回文件路径各部分的信息 在返回的参数中 pathstr表示文件路径 name是
  • 使用vscode remote ssh功能远程连接服务器或树莓派时,报错Setting up SSH tunnel的终极解决办法,全网仅此一份

    当你想用vscode remote ssh 功能远程开发linux服务器 树莓派时 vscode server文件创建完成 但是一直显示卡在 Setting up SSH Host lt 你的用户名 gt Setting up SSH tu
  • Kendo UI开发教程(1): 概述

    JavaScript 在开发Web应用的作用越来越大 JQuery简化了HTML和JavaScript之间的操作 jQuery的教程可以参见本博客jQuery和 jQuery UI 入门教程 jQuery UI 是一套 JavaScript
  • 前端开发程序员的月薪到底有多高?

    前几天微信公开课上 张小龙现场展示了 跳一跳 听说还会邀请最会 跳 的人去其办公室一决高下 不由让人下定决心苦练神功 以见张大佬一面 不管是小程序的横空出世 还是Web应用的大量涌现 它们都掀起了一波 前端开发需求热 给前端开发工程师们带来
  • RedisTemplate读取包含指定前缀的Key的value

    文章已同步到个人博客 http www tianshaojiao com p 2140 一 需求 我在做im开发的时候 往往需要在redis中存入客户端与服务端的连接信息 这些连接信息都是有指定前缀的 如下图所示 现在如果想要推送消息到所有
  • 【华为OD机试真题2023 JS】Linux发行版的数量

    华为OD机试真题 2023年度机试题库全覆盖 刷题指南点这里 Linux发行版的数量 知识点DFS搜索BFS搜索并查集 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 Linux操作系统有多个发行版 distrowatch
  • -std=c99带来问题

    今天用 std c99编译c文件 内容是信号这一块的 包含了sigprocmask 编译时发现总是显示sigset t类型没有声明 函数中的3个状态的无法找到 后来发现把 std c99去掉就行了 不知道有什么区别
  • 15 玩转STM32之IIC通信(芯片硬件篇)

    15 1 IIC控制器说明 硬件部分 在14 玩转STM32之IIC通信 软件模拟篇 我们讲了软件模拟的方式 本章讲解芯片自带的硬件部分 并非所有的芯片都含有IIC 像51系列的是没有的 但是绝大多数是有的 根据我用过的S32 STM32
  • 高通 ADSP sensor SSC

    1 添加入口函数 adsp sensors dd qcom inc sns dd h extern sns ddf driver if s sns dd

随机推荐

  • 实战:单点登录的两种实现方式,附源码

    最近工作有点忙 好久没更新文章了 正好这两天在整理单点登陆相关的文档 今天趁着小孩睡着了 赶紧码一篇实战文交差 概念 单点登录 Single Sign On SSO 是一种身份验证服务 允许用户使用单个标识来登录多个应用程序或系统 如下图所
  • 关于vue-cli2.9.6 使用vue-video-player,视频播放rtmp视频流error:in ./node_modules/videojs-swf/dist/video-js.swf

    我在做vue前端开发项目的时候 领导让我在别人项目的基础上进行二次开发 我将自己的页面合并至平台 我用的vue cli版本是2 6 9 然后我按照正常流程 引入vue video player video js等 然后配置playerOpt
  • 【算法/剑指Offer】请实现一个函数,用来判断一颗二叉树是不是对称的。

    题目描述 请实现一个函数 用来判断一颗二叉树是不是对称的 注意 如果一个二叉树同此二叉树的镜像是同样的 定义其为对称的 代码很简单 关键还是知道怎么样才能判断一个 二叉树是否对称 只要采用前序 中序 后序 层次遍历等任何一种遍历方法 分为先
  • 复习笔记——计算机组成原理

    2014年12月考研前一周写的笔记 放在这里 希望对其他人有帮助 写到一半时 发现这个公开课的资料挺全的 http share onlinesjtu com course view php id 3 教材 视频 ppt 还有swf
  • 简单使用Linux

    1 创建虚拟机及安装操作系统 一 打开下载好的VMware Workstation软件 二 点击 创建新的虚拟机 三 选择需要创建的虚拟机 建议选自定义 再点击下一步 四 选择系统默认兼容性并选择稍后安装 再点击下一步 五 选择Linux系
  • 互联网晚报

    腾讯回应高考生喊话马化腾 2023高考首日 在杭州十四中考点 第一科语文科目考试还没有结束 一名男生就走出了考场 面对记者采访 男生喊话马化腾 腾讯能不能把QQ空间改回老版 新版太难用了 对此 腾讯QQ在其官方微博回应称 腾讯非常重视其建议
  • golang GET http、https、代理方式

    package utils import crypto tls encoding json io ioutil log net http net url time func GET url string reply interface er
  • CentOS 构建yum本地源

    不管是为了安全起见 还是为了方便 构建本地源对于维护工作肯定会提供一些便利 1 将事先准备好的镜像文件 如 CentOS 7 x86 64 DVD 1908 iso 加载至服务器CD DVD 或虚拟机CD DVD 并将镜像文件挂载至指定的目
  • java &= ~_Java基础一

    一 1 对象 其实对象就是类的实例化 如创建一个类 车 创建一个类的对象 小汽车 而且有颜色 大小 车速等等 2 类 例如车有 小汽车 大卡车 三轮车 四驱车等等 但要用一个词概括它们 则可以统称为车 现在这个 车 就相当于 类 3 方法
  • 1489. 田忌赛马 (贪心,区间dp)

    题目 田忌赛马的故事 田忌每次输一局要付200元 赢一局获得200元 平局获得0元 问 田忌和齐王都有n匹马的情况下 最多可以获得多少元 1489 田忌赛马 AcWing题库 由于田忌赛马的故事背景 我们很快就能够想到合理的贪心策略 上等马
  • mimikatz的使用

    目录 1 远程连接使用 2 本地使用 注意 1 版本问题 2 运行权限 3 抓取范围 4 抓不到密码的解决方法 mimikatz下载链接 mimikatz是个好东西 它的功能很多 最重要的是能从 lsass exe进程中获取windows的
  • 第几个幸运数

    暴力 include
  • Vue中的验证登录状态

    Vue项目中实现用户登录及token验证 先说一下我的实现步骤 使用easy mock新建登录接口 模拟用户数据 使用axios请求登录接口 匹配账号和密码 账号密码验证后 拿到token 将token存储到sessionStorage中
  • git撤回某次commit

    假设我们已经将本地代码提交到远程分分支上 但是我们想撤回某一个commit或者是对某一个文件的修改进行撤回等操作 我们可以使用以下这几种方式 一 git reset git reset 回滚到某次提交 git reset mixed 此次提
  • 数据库系统原理------ER图转化成关系模式

    E R图转换 E R图是由实体 实体的属性和实体之间的联系三个要素组成的 将E R图转换为关系模型实际上就是要将实体 实体的属性和实体之间的联系转化为关系模式 实体集向关系模式的转换 一般转换遵循的原则 实体集的转换规则 一个实体型转换为一
  • 特网科技云服务器适合安装那些操作系统

    通过云主机 择带有预装控制面板的模板 只需单击几下即可安装 可用的操作系统模板 我们在管理虚拟服务器时使用的主要操作系统是Ubuntu Debian Windows CentOS Kali Astra Orel CentOS Communi
  • unity+vuforia+二维码识别

    Easy Code Scanner 下载地址 Easy Code Scanner v2 3 本文转载自http blog csdn net puremilk684 article details 51479245 经本人验证 可以在安卓平台
  • .NET使用MQTT通信实例

    最近项目里面需要用到MQTT 刚开始听到这个词一脸茫然 不知道是什么 最后通过自己百度整理一点资料 希望最大家有帮助 在这里需要引用MQTTnet 可在解决方案在右键单击 选择 管理解决方案的 NuGet 程序包 在 浏览 选项卡下面搜索
  • AttributeError: module ‘tensorflow‘ has no attribute ‘Session‘

    代码错误 Traceback most recent call last File D PyCharm PythonProject DRL Networking master DRL Networking master IPDPS2020
  • Real-Time Rendering——9.11 Wave Optics BRDF Models波动光学BRDF模型

    The models we have discussed in the last few sections rely on geometrical optics which treats light as propagating in ra