LearnOpenGL

notes for LearnOpenGL CN 顶点数组对象:Vertex Array Object,VAO 顶点缓冲对象:Vertex Buffer Object,VBO 元素缓冲对象:Element Buffer Object,EBO 或 索引缓冲对象 Index Buffer Object,IBO create shader(vertex, fragment…) -> shader source -> compile shader -> link shader to shader program // ..:: 初始化代码(只运行一次 (除非你的物体频繁改变)) :: .. // 1. 绑定VAO glBindVertexArray(VAO); // 2. 把顶点数组复制到缓冲中供OpenGL使用 glBindBuffer(GL_ARRAY_BUFFER, VBO); glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW); // 3. 设置顶点属性指针 glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(float), (void*)0); glEnableVertexAttribArray(0); [...] // ..:: 绘制代码(渲染循环中) :: .. // 4....

九月 19, 2023 · 1 分钟 · 106 字 · Me

Leetcode101

Notes for LeetCode 101 - A LeetCode Grinding Guide 贪心 C++ Notes Lambda function Refer here #include <algorithm> #include <cmath> void abssort(float* x, unsigned n) { std::sort(x, x + n, // Lambda expression begins [](float a, float b) { return (std::abs(a) < std::abs(b)); } // end of lambda expression ); } 下图显示了 lambda 语法的各个部分: capture 子句(在 C++ 规范中也称为 Lambda 引导。) 参数列表(可选)。 (也称为 Lambda 声明符) mutable 规范(可选)。 exception-specification(可选)。 trailing-return-type(可选)。 Lambda 体。

九月 16, 2023 · 1 分钟 · 70 字 · Me

RayTracing

Ray Tracing in One Week https://raytracing.github.io/

九月 16, 2023 · 1 分钟 · 6 字 · Me

PBRT

参考链接 https://yangwc.com/categories/Ray-Tracer/ https://www.zhihu.com/column/wayonpbrt Ch.5 Color and Radiometry 颜色和辐射度量学 颜色系统 光谱功率分布 (spectral power distribution)(SPD):光谱能量分布(Spectral Power Distribution,简称为SPD)描述了光波波长的辐射功率分布情况,通常采用直角坐标系下的分布曲线来表示,横轴表示波长λ,相应地纵坐标表示单位波长间隔内的辐射功率。在计算机图形学中我们通常只关注人眼可见的光波,因而波长取值范围为400nm−700nm 辐射度量学 Flux Irradiance Intensity Radiance

九月 15, 2023 · 1 分钟 · 20 字 · Me

PBDR

PBDR: Physics-based differentiable rendering CVPR 2021 tutorial Inverse Rendering Monte Carlo integration TODO:好好学习一下蒙特卡洛的数学代码方法 PDF: Probability Density Function Finite Differences doesn’t work By Appling Antialiasing Inverse rendering more robust Anti-aliasing makes 0-1 Binary value -> Continuous, which suits differentiate Inverse rendering(in CG) == Analysis by synthesis(in CV) Global minima – ambiguity How to implement neural network based learned initializations? Leibniz Integral Rule***(How to prove? How to apply?)*** Reynolds transport theorem Aera sampling...

九月 15, 2023 · 1 分钟 · 73 字 · Me

NeRF

ML擅长inverse problem NeRF MLP的作用:用神经网络函数来拟合一个体素的“函数”,从而实现给出5D坐标时可以查询到颜色和Density值,也就为随后的体素渲染提供了输入 神经网络倾向于学习低频函数 加入Positional encoding帮助维持高频信息的恢复:傅里叶变换?使输入掺入高频函数 Hierarchical sampling 加速 Instant-NGP Read list: 【CSDN】Instant-NGP-环境搭建和概念解读 To be read: 论文随记|Instant Neural Graphics Primitives with a Multiresolution Hash Encoding Abstract Plenoxels: Radiance Fields without Neural Networks PlenOctrees for Real-time Rendering of Neural Radiance Fields Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields NeRF++ Instant-ngp重要的加速手段: cuda加速 多分辨率Hash位置编码(跟NeRF的5Dinput相比,把输入特征化) 射线推进:指数步进、空白跳过、样本压缩 空间哈希函数 NeuS Read list: To be read: [论文笔记]NeuS: Learning Neural Implicit Surfaces by Volume Rendering for Multi-view Reconstruction 基于SDF...

九月 11, 2023 · 6 分钟 · 1214 字 · Me

23FallSemester

AI and Graphics Lectures from UIUC Lec 01 GAMES101 Lec 15 Lab 01 15-418 Parallel Computing Lec 02 CSC-2457 ML Methods in 3D & Geometric Nerfs GAMES204 Learn image processing / Physics and Optics priors in rendering or imaging Learn Signal & System methods in denoising \ graphics analysis \ ML methods … Learn advanced imaging technologies… TOEFL 看视频学新写作 规划规律性练习口语&写作的方法 Contact Lingjie liu for research in nerfs & reconstructions Yuchi Huo for topics in neural rendering pipeline & research posibilities

九月 4, 2023 · 1 分钟 · 80 字 · Me

CMU 15-418 Parallel

` Parallel Computer Architecture and Programming Spring2017 [[S: Content]] S = C: Check, random or related insights S = N: Note, some notes S = T: Todo, literally S = R: Refer, cross reference S = Q: Question, some questions, might be collected at the end Why Parallelism? Why Efficiency Common definition: A parallel computer is a collection of processing elements that cooperate to solve problems quickly speedup (P processor) = execution T (1 processor) / execution T (p processor)...

九月 1, 2023 · 80 分钟 · 16952 字 · Me

哈苏去色罩

去色罩: 旋转 编辑 -> 指定配置文件 -> 配置文件选为 Hasselblad RGB Ctrl + I 反相 调整 -> 曲线 ,在红绿蓝三个通道中,分别按住Alt 拖动滑块至合适(无溢出)位置 裁切: 矩形框选,新建图层 图像 -> 裁切 ,基于透明像素裁切(经常裁切可为该键设置快捷键,有效提升裁切效率,我的设置是 Ctrl + Alt + X) Ctrl + Alt + S,存储副本,记得取消勾选存储 “图层” 的框,按照默认设置保存即可

八月 30, 2023 · 1 分钟 · 36 字 · Me

UIUC_CS 598_AI & Graphics

Links Lecture materials, records and readings Homeworks Rendering Image generation Shape Motion AICG-21 index homepage Notes Outline Here is roughly the topics I’ll cover and when. Rendering objects Week ending Topics 29 Jan Ray tracing in all its glory; plenoptic functions 5 Feb A little radiometry; NERFY representations 12 Feb Differentiable rendering 19 Feb Neural rendering Computational Photography Week ending Topics 26 Feb Recovering illumination fields from pictures 5 Mar Recovering material properties from pictures 12 Mar More NERFY representations 19 Mar Indeterminate problems: colorization; the future in video Modelling objects...

八月 24, 2023 · 1 分钟 · 143 字 · Me

15-418_ParallelComputing

Lecture version from Spring 2018 Webpage from https://www.cs.cmu.edu/afs/cs/academic/class/15418-s18/www/ resources: a book: Is Parallel Programming Hard, And, If So, What Can You Do About It? Lectures Lecture 1: Why Parallelism More efficient pipelining 指令高效流水线(Instruction Efficient Pipelining) ILP,指令级并行(Instruction-Level Parallelism) Intel曾以频率作为性能代名词来营销,但2004年以来频率不再以指数级增长,被迫转而堆积核心;引出散热问题和对并行的要求 并行要关注:任务的平衡性 Speed != Efficiency Lecture 2: A Modern Multi-Core Processor refer:https://zhuanlan.zhihu.com/p/522901372 前Multi-Core 时代 ILP,指令级并行:如何理解? 分支预测-算法与设计:如何理解? 超标量与流水线技术? out-of-order execution 乱序执行(Out-of-Order Execution)是一种现代计算机处理器的执行策略,旨在提高指令级别并行性(ILP)和执行效率。它的核心思想是在不影响程序的语义正确性的前提下,允许处理器在执行指令时不按照它们在程序中的顺序来执行,以便充分利用处理器的资源并提高指令执行速度。 多核时代 SIMD,即单指令多数据(Single Instruction, Multiple Data),是一种并行计算的计算机体系结构设计范例。其基本思想是,对于一些需要对相同类型和大小的多个数据元素执行相同操作的情况,可以使用一个指令来同时控制多个ALU,从而实现数据的并行处理。例如,如果要对两个长度为4的整数数组进行逐元素相加,可以使用一个SIMD指令来同时控制4个ALU,每个ALU负责一个元素的加法,这样就可以在一个时钟周期内完成4个元素的加法,而不是使用4个普通指令来分别执行每个元素的加法。 instruction stream coherence SPMD (on GPU) Superscalar?...

八月 24, 2023 · 2 分钟 · 248 字 · Me

Pointcept

跳过train直接val 注释以下两个地方: 150到156行: 125到170行 Pointcept is a powerful and flexible codebase for point cloud perception research. It is also an official implementation of the following paper: Masked Scene Contrast: A Scalable Framework for Unsupervised 3D Representation Learning Xiaoyang Wu, Xin Wen, Xihui Liu, Hengshuang Zhao IEEE Conference on Computer Vision and Pattern Recognition (CVPR) 2023 [ Pretrain ] [ MSC ] - [ arXiv ] [ Bib ] → here...

八月 20, 2023 · 16 分钟 · 3329 字 · Me