shensunbo Blog

「离开世界之前 一切都是过程」

AI agent review

使用vscode 的 agent review gerrit上的代码提交 Branch: git fetch url refs/changes/86/584886/1 && git checkout -b change-584886 FETCH_HEAD review 返回原分支:git checkout - 删除临时分支:git branch -D cha...

docker基础操作

Docker 使用说明 基本概念 Image(镜像):Docker 镜像是一个只读的模板,包含了运行应用所需的所有内容(代码、库、依赖、环境等)。可以理解为操作系统的快照。 Container(容器):容器是镜像的运行实例。它是一个隔离的进程环境,可以启动、停止、删除。容器基于镜像创建,但可以有自己的数据和状态。 对比项 镜像(Im...

vscode 查看和编辑安卓项目

android标准库包符号找不到问题 在使用 VSCode 查看和编辑 Android 项目时,可能会遇到标准库包符号找不到的问题。这通常是由于 VSCode 未正确配置 Android SDK 和 NDK 路径所致。以下是解决该问题的步骤:

开发板renderer第一次draw花费的时间很长

问题 第一次渲染循环(draw call)花费的时间特别长,超过了1s,后续的渲染循环时间正常,10ms左右。 解决方案 create的时候资源预热, 在create完成之后先draw一次 ✅ 现象解释 OpenGL 资源首次上传/懒加载现象 OpenGL 资源(VBO/VAO/纹理/UBO)通常在 glBufferData、glTexImage2D 等 API 调用时分配...

ImageMagick

修改分辨率 1 2 3 4 5 6 7 8 9 10 11 12 13 # 进入纹理目录 cd "path/to/your/texture/directory" # 创建输出目录 mkdir -p "../TEX_2K" # 批量处理所有PNG文件 for file in *.png; do echo "处理: $file" convert "$file" -resize...

测量OpenGL指令执行时间

CPU和GPU的执行是异步的,CPU发出OpenGL指令后,并不会等待GPU执行完成,而是继续执行后续代码。因此,直接在CPU端测量OpenGL指令的执行时间是不准确的。 glFlush() vs glFinish() 方面 glFlush() glFinish() 作用 发送命...

bazel 单元测试


汽车360环视-SVM

BEV 在2D俯视图布局中,车模和雷达UI可以使用正交投影 可以省略view矩阵和投影矩阵,直接根据2D视图的实际画布代表的物理距离,修改模型矩阵,将3D模型画上去 在2D视图中使用投影矩阵,会导致Z轴深度不同,看到的模型大小就不一致,当背景和模型不使用一个相机的时候,很难将模型放到正确的位置 直接使用模型矩阵的话,相当于去掉了相机,就不会产生远近的问题了,而是在一个平面上根据...

使用FreeType字体库为NV12的图像叠加水印

reference CPU方案,仅适用于简单的字符水印,比如时间戳等。复杂的水印建议使用GPU方案。 这个方案存在字体边缘有黑色边框的问题 😁 fixed TODO list 优化处理速度,目前X86上叠花费大概300us,FT_Load_Char总共占了200us,后续修改为将字符预渲染到查找表中,查表替代实时渲染。 已经修改...

HDRI图像制作skybox cubemap

使用到的网站 HDRI资源网站:Poly Haven 立方体贴图制作网站:HDRI to CubeMap 制作流程 从Poly Haven网站下载HDRI图像资源,选择合适的分辨率和格式(建议使用HDR格式以保留高动态范围信息)。 打开HDRI to CubeMap网站,上传下载的HDRI图像。 CUBEMAP VIEW可以调整显示区域和曝光度 点击sav...