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

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

Research_proc

install ST 环境 跑 ST 代码 ST环境 运行clash:需要保持terminal cd ~/clash ./clash -d . pandas incompatible with numpy ImportError: this version of pandas is incompatible with numpy < 1.20.3 your numpy version is 1.19.5. Please upgrade numpy to >= 1.20.3 to use this pandas version –>installed pandas == 1.3.5 cuda==11.1 for torch_sparse couldn’t match with torch before torch 检测不到gpu,但nvcc -V版本显示11.1 已经拷贝cudnn ST Debug 可以运行 Opwd What am I doing right now?...

四月 28, 2023 · 2 分钟 · 283 字 · Me

The missing semester

The missing semester Lecture 1 The Shell shell 是什么? 广泛使用的文字接口。 课程使用Bourne Again Shell, 简称 “bash” 。 是最广泛使用的一种shell。 在输入指令前需要打开终端(通常内置)。 使用shell 当打开一个Terminal时会显示如 [jon@xpanse missing-semester]$ 分别表示 用户名 @ 机器名 当前所在路径。 用空格来分隔程序的不同参数,若想输入含空格的字符串作为参数,可以使用“Hello world”,也可以使用Hello\ world转义空格。 shell实际上类似于一种编程语言,不仅仅能执行特定的程序或转递参数,甚至可以执行while loop、conditional(条件)等语句,可以定义函数,可以设置变量等等(后续课程将会详细介绍)。 environment variable环境变量 shell运行前内置的参数 PATH (路径变量) 调用指令echo $PATH实例: missing:~$ /bin/echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin which指令 绝对路径/相对路径 以 / 开头,那么它是一个 绝对路径,其他的都是 相对路径 。 路径中,. 表示的是当前目录,而 .. 表示上级目录。 pwd print working directory cd change directory dot means current directory/dot dot means parent directory...

五月 3, 2022 · 3 分钟 · 466 字 · Me