Games101学习笔记2
参考博客:GAMES101 梳理 / 个人向图形学笔记_games101笔记_river_of_sebajun的博客-CSDN博客
lecture 05 Rasterization 1(Triangles) 光栅化
把东西画在屏幕上的过程就是光栅化的过程
- 视口变换
为什么模型用三角形?
最基本的几何平面;保证是平面;容易进行插值操作(重心坐标)
2、怎么判断三角形和像素的关系?
实际上就是用像素对图像进行采样,会出现锯齿(aliasing)。
解决方法:出现锯齿,进行反走样(antialiasing),先进行模糊操作再进行采样。
为什么模糊操作可以反走样?采样就相当于在时域用冲激函数对原函数做乘积,而采样频率越低,冲激函数频率越低,在频域的表现,冲激函数频率越高。而频域的原函数对冲激函数进行卷积操作,相当于对原函数图像的重复,冲激函数频率越高,越容易出现混叠。模糊操作消去了高频信号,高频信号便不容易混叠。
*傅里叶变换,时域与频域,高频与低频,卷积算子。
*时域的卷积相当于频域的乘积,时域的乘积相当于频域的卷积。
真正的反走样不好算。可能是因为进行滤波之后不好判断三角形和像素的关系?
现实点的解决方法:
1、提高分辨率,就不关图形学的事儿了;
2、MSAA(multisampling AA)/超采样,把一个像素变成多个像素进行采样,得到的值求平均,还是用一个像素来表现,近似了模糊的操作,并没有提高分辨率,缺点是效率问题(问了老师,老师把antialising叫做反混淆,实际指的可能就是MSAA?);
3、FXAA(fast approximate AA),图像处理层面,对生成的锯齿图去锯齿;
4、TAA(temporal AA),把MSAA对样本的处理分布在时间上。
5、超分辨率/超采样/DLSS(deap learning super sampling)
*这一块的前提好像就是模型的复杂度/图像的分辨率足够,采样点不足。如果采样点足够多,就不会出现锯齿现象!
相关文章:

Games101学习笔记2
参考博客:GAMES101 梳理 / 个人向图形学笔记_games101笔记_river_of_sebajun的博客-CSDN博客 lecture 05 Rasterization 1(Triangles) 光栅化 把东西画在屏幕上的过程就是光栅化的过程 视口变换 为什么模型用三角形? 最基本的几何平面;保…...
java字符串String类的常用方法
java字符串String类的常用方法 字符串的创建: (1)定义字符串直接赋值,在字符串池中开辟空间() String str1“Hello”;//在字符串池中写入字符串"hello" String str2“Hello”;//直接引用字符串池中的"Hello" System.out.println(s…...
自动化测试如何解决chrome自动更新问题
问题 调试好的自动化测试脚本,有时候总是在第一天或过几天就不好使了。产品并未进行功能逻辑,ui修改,一切还和调试自动化脚本的时候保持一致。运行自动化测试脚本时,控制台总是会在driver webdriver.Chrome()这一行报错。 问题…...

闲鱼卖货:新手容易踩坑的7个地方。赶紧看看有没有中招?
科思创业汇 大家好,这里是科思创业汇,一个轻资产创业孵化平台。赚钱的方式有很多种,我希望在科思创业汇能够给你带来最快乐的那一种! 这是我以前的一个学生收到的第一个非法通知。他告诉我,他当时很害怕,…...
PowerShell 获取某目录下所有的文件、文件夹,同时对获取到的文件路径字符串进行替换处理
PowerShell 获取某目录下所有的文件、文件夹,同时对获取到的文件路径字符串进行替换处理 前言: 为了将Windows系统下的Java编译文件与linux服务器上的文件进行比较,故进行此文件路径的获取及路径处理。 在只有文件路径 而没有实际文件的情况下…...

JUC并发编程之线程锁(一)
目录 1.ReentrantLock(互斥锁) 2.ReentRantReaderWriterLock(互斥读写锁) 3.StampedLock(无障碍锁) 4.Condition(自定义锁) 5.LockSupport 问题引出: 由于传统的线程控制需要用到同步机制Sy…...
Android AlertDialog标题居中
网上很多做法都是使用setCustomTitle方法实现的,我偏不,因为我已经找到了标题的textView了: 在show了之后可以拿到标题(注意一定是show之后才能拿得到,create之后拿也是空的): TextView title…...
k8s界面化平台dashboard、kubesphere、Rancher对比
k8s集群管理dashboard有很多,比如kuboard、官方发dashboard、kubesphere、Rancher等等。 Dashboard、KubeSphere 和 Rancher 都是流行的 Kubernetes 管理和操作界面。它们都提供了图形化的用户界面,以简化对 Kubernetes 集群的管理和监控。每个工具都有其…...
【字符串左旋】
字符串左旋 1.题目要求 实现一个函数,可以左旋字符串中的k个字符。 例如: ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 2.解法: 设计循环使其可以旋1次,然后让他执行n次是一个最简单的思路: 函数实现…...
Docker Dirtypipe(CVE-2022-0847)漏洞复现与分析容器逃逸
安装环境 ./metarget cnv install cve-2022-0847 --verbose 原理 同脏牛,通过写只读内存,对映射的内存做篡改 EXP docker run --rm -it -v $(pwd):/exp --cap-addCAP_DAC_READ_SEARCH ubuntu如果提示 Unknown capability to add: "CAP_CAP_DAC_RE…...

python接口自动化测试框架2.0,让你像Postman一样编写测试用例,支持多环境切换、多业务依赖、数据库断言等
项目介绍 接口自动化测试项目2.0 软件架构 本框架主要是基于 Python unittest ddt HTMLTestRunner log excel mysql 企业微信通知 Jenkins 实现的接口自动化框架。 前言 公司突然要求你做自动化,但是没有代码基础不知道怎么做?或者有自动化…...

Vue.js2+Cesium1.103.0 九、淹没分析效果
Vue.js2Cesium1.103.0 九、淹没分析效果 Demo <template><divid"cesium-container"style"width: 100%; height: 100%;"><spanid"button"style"position: absolute; right: 50px; top: 50px; z-index: 999; font-size: 24px…...

SpringBoot案例-部门管理-新增
根据页面原型,明确需求 页面原型 需求 阅读接口文档 接口文档链接如下: 【腾讯文档】SpringBoot案例所需文档 https://docs.qq.com/doc/DUkRiTWVaUmFVck9N 思路分析 前端在输入要新增的部门名称后,会以JSON格式将数据传入至后端…...
微信小程序中背景图片如何占满整个屏幕,拉伸
不变形 1. 在页面的wxss文件中,设置背景图片的样式: page{background-image: url(图片路径);background-size: 100% 100%;background-repeat: no-repeat; }2. 在页面的json文件中,设置背景图片的样式: {"backgroundTextStyl…...

Java并发编程(四)线程同步 中 [AQS/Lock]
概述 Java中可以通过加锁,来保证多个线程访问某一个公共资源时,资源的访问安全性。Java提出了两种方式来加锁 第一种是我们上文提到的通过关键字synchronized加锁,synchronized底层托管给JVM执行的,并且在java 1.6 以后做了很多…...

PyTorch深度学习环境安装(Anaconda、CUDA、cuDNN)及关联PyCharm
1. 关系讲解 Tytorch:Python机器学习库,基于Torch,用于自然语言处理等应用程序 Anaconda:是默认的python包和环境管理工具,安装了anaconda,就默认安装了conda CUDA:CUDA是一种由显卡厂商NVIDI…...

Active Directory安全和风险状况管理
风险评估和管理 风险评估和管理是主动安全性和合规性管理不可或缺的一部分。 发现关键基础设施组件中的风险行为和配置对于阻止网络入侵和预防网络攻击至关重要。帐户泄露和配置错误漏洞是用于破坏网络的常见技术。当评估、监控和降低 Active Directory 基础架构的风险时&…...
学术论文GPT源码解读:从chatpaper、chatwithpaper到gpt_academic
前言 之前7月中旬,我曾在微博上说准备做“20个LLM大型项目的源码解读” 针对这个事,目前的最新情况是 已经做了的:LLaMA、Alpaca、ChatGLM-6B、deepspeedchat、transformer、langchain、langchain-chatglm知识库准备做的:chatpa…...
单链表(C语言版)
单链表:理解、实现与应用 单链表(Singly Linked List)是一种常见的数据结构,用于存储一系列具有相同类型的元素,并通过节点之间的链接建立起它们的关系。每个节点包含一个数据元素和一个指向下一个节点的指针。相比于…...

初学vue3时应该注意的几个问题
初学vue3时应该注意的几个问题 声明响应式 响应式数据的声明在vue2的时候很简单,在data中声明就行了。但现在可以使用多个方式。 reactive用于声明Object, Array, Map, Set; ref用于声明String, Number, Boolean 使用reactive来声明基础数据类型(Str…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...

【配置 YOLOX 用于按目录分类的图片数据集】
现在的图标点选越来越多,如何一步解决,采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集(每个目录代表一个类别,目录下是该类别的所有图片),你需要进行以下配置步骤&#x…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...

实战设计模式之模板方法模式
概述 模板方法模式定义了一个操作中的算法骨架,并将某些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的前提下,重新定义算法中的某些步骤。简单来说,就是在一个方法中定义了要执行的步骤顺序或算法框架,但允许子类…...
从零手写Java版本的LSM Tree (一):LSM Tree 概述
🔥 推荐一个高质量的Java LSM Tree开源项目! https://github.com/brianxiadong/java-lsm-tree java-lsm-tree 是一个从零实现的Log-Structured Merge Tree,专为高并发写入场景设计。 核心亮点: ⚡ 极致性能:写入速度超…...

网页端 js 读取发票里的二维码信息(图片和PDF格式)
起因 为了实现在报销流程中,发票不能重用的限制,发票上传后,希望能读出发票号,并记录发票号已用,下次不再可用于报销。 基于上面的需求,研究了OCR 的方式和读PDF的方式,实际是可行的ÿ…...

未授权访问事件频发,我们应当如何应对?
在当下,数据已成为企业和组织的核心资产,是推动业务发展、决策制定以及创新的关键驱动力。然而,未授权访问这一隐匿的安全威胁,正如同高悬的达摩克利斯之剑,时刻威胁着数据的安全,一旦触发,便可…...
python读取SQLite表个并生成pdf文件
代码用于创建含50列的SQLite数据库并插入500行随机浮点数据,随后读取数据,通过ReportLab生成横向PDF表格,包含格式化(两位小数)及表头、网格线等美观样式。 # 导入所需库 import sqlite3 # 用于操作…...