图形学专题

图形学之腐蚀膨胀

腐蚀(erode)膨胀(dilate)其实是两种非常形象的操作,但是有的时候容易搞混淆。 腐蚀(erode),是将灰度值小(视觉上就是比较暗)的区域增强扩展,主要用来去除比较亮的噪点。膨胀(dilate),是将灰度值大(视觉上就是比较亮)的区域增强扩展,主要用来连通相似颜色或强度的区域。 然后腐蚀与膨胀涉及的一个重要概念就是核,也可以称之为模板或者掩码。核具有几个重要的属性,形状(圆形、方

图像处理(计算机图形学)和计算机视觉的区别和关系

随着工业互联网的发展,图片处理(计算机图形学)和计算机视觉的应用越来越多,两者有区别也有紧密联系,在此进行简单介绍,共同学习。 图像处理(计算机图形学): 是对输入的图像做某种变换,输出仍然是图像,基本不涉及或者很少涉及图像内容的分析。比较典型的有图像变换,图像增强,图像去噪,图像压缩,图像恢复,二值图像处理等等。基于阈值的图像分割也属于图像处理的范畴。它一般处理的是单幅图像。 计算机视觉:

计算机图形学:中点画圆算法

在平面解析几何中,圆的方程可以描述为(x – x0)2 + (y – y0)2 = R2,其中(x0, y0)是圆心坐标,R是圆的半径,特别的,当(x0, y0)就是坐标中心点时,圆方程可以简化为x2 + y2 = R2。在计算机图形学中,圆和直线一样,也存在在点阵输出设备上显示或输出的问题,因此也需要一套光栅扫描转换算法。为了简化,我们先考虑圆心在原点的圆的生成,对于中心不是原点的圆,可以通过

GAMES101图形学笔记1

一、图形学的应用 1.游戏渲染、光照 2.电影特效 3.面部、动作捕捉,如Avatar(阿凡达)中的面部捕捉 4.设计 建筑设计,汽车设计 5.虚拟现实VR 增强现实AR 6.数码插画 笔刷 PS软件等 7.模拟、仿真 8.GUI 界面设计等 9.字体设计typography 二、为什么学习图形学 1.图形学是一门Awesome的学科,能够创造很多有意思的东西,有意思的图像 2.了解并学习一

计算机图形学入门18:曲面

1.曲面定义         曲面(Surface)在图形学中应用非常广泛,可以用它来描述各种三维物体的表面。如下图所示。 2.贝塞尔曲面 2.1 介绍         曲线和曲面一样都是物体显示的表示方法,自然可以把曲线的概念延伸到平面上。如上图所示,就是贝塞尔曲面(Bezier Surface)构成的表面,并且可以看到是分段面拼接的。         如果对完整的表面进行分解

计算机图形学之图像变换与标定

一.齐次坐标的定义 1.齐次坐标定义 2.齐次坐标的理解 二.最小二乘法 1.最小二乘法 2.最小二乘计算仿射矩阵 三.图像变换 1.关于图像变换的总结 2.旋转矩阵推导 3.刚体变换与仿射变换实现 4.利用SVD求解刚体变换矩阵 5.计算两个点集间的刚体变换 6.奇异值分解的推理 7.3D点云配准之刚体变换 四.标定 1.九点标定 2.opencv九点标定 五.

【计算机图形学】概念:Mobility

基于最近要实现的内容,涉及到了Mobility的概念,但是我不清楚什么是Mobility,网上也搜索不到特别相关的东西,通过问相关方向的师兄,自己看了一篇涉及了一点Mobility Prediction的数据集文章(NeurIPS2022-MultiScan: Scalable RGBD scanning for 3D environments with articulated objects)后

计算机图形学入门08:反走样、滤波与卷积

1.抗锯齿(反走样)         在上一章中,在光栅化三角形的时候出现了明显的锯齿效果。如下图所示是三角形采样过程:         从图上可知像素点不是纯红色就是纯白色。如果在采样前先进行模糊操作(滤波),如下图所示:         经过模糊操作后三角形的边缘颜色变化有了一定的过渡,再进行采样时,靠近三角形边缘的地方可以采到一部分过渡色的像素,采样结果不在是要么红色要么白色,

计算机图形学 -- 变换之旋转二 [鼠标操作]

在上一次的旋转中加入鼠标的动作, 按左键加速,右键减速,中键停止 滚轮的动作文件中好像没有,总之没有找到,只有键的定义 稍后补上 #include<GL/glut.h>#include<stdlib.h>#pragma comment(linker,"/subsystem:\"windows\" /entry:\"mainCRTStartup\"") GLfl

计算机图形学 -- 变换之旋转一 [金字塔旋转] [各种详解哦]

OpenGL之变换 这一次用到的有双缓冲、双缓存技术,空闲调用函数,激活函数(启用功能),平移和旋转等 Code: #include<GL/glut.h>#include<stdlib.h>#pragma comment(linker,"/subsystem:\"windows\" /entry:\"mainCRTStartup\"") GLfloat r

计算机图形学 -- 基本图形函数练习

1. 基本 #include<glut.h>#pragma comment(linker,"/subsystem:\"windows\" /entry:\"mainCRTStartup\"")void mydisplay(void){//glClearColor : 通过glClear使用红,绿,蓝以及AFA值来清除颜色缓冲区,并且缺省值全是0. 即(0,0,0,0

计算机图形学 -- Reshape函数

Reshape函数 现在来说说上一次用到的Reshape函数里面的细节 void Reshape(int w,int h) { glViewport(0,0,(GLsizei)w,(GLsizei)h);glMatrixMode(GL_PROJECTION);glLoadIdentity(); gluOrtho2D(0.0,(GLdouble)w,0.0,(G

计算机图形学 -- 画线算法 [DDA] [中点画线] [Bresenham]

[DDA] [中点画线] [Bresenham] 画线要用到的坐标系区域表示: 逐点比较算法流程:

【计算机图形学】DINA: Deformable INteraction Analogy

文章目录 1. 做的事2. 为什么做3. 介绍4. 方法4.1 问题定义4.2 交互表示4.3 交互类比4.4 从刚性到可变形的优化 5. 讨论,限制与未来工作 1. 做的事 引入“可变形交互模仿”的定义,该定义为:在两个3D物体之间生成相近的交互。给定一个锚定物体(如手)和源物体(如被手握着的马克杯)的交互示例,我们的目标是在相同的锚定物体和多样化的新目标物体(如玩具飞机)之间

计算机图形学入门06:视口变换

在前面的内容中,在MVP变换(模型变换,视图变换,投影变换)完后,所有的物体位置都变换到了[-1, 1]³的标准立方体里,下一步要把物体绘制到屏幕(Screen)上。 1.什么是屏幕?         对于图形学来说把屏幕抽象的认为是一个二维数组,数组中的每一个元素是一个像素(Pixel),屏幕是一个典型的光栅(Raster)成像设备。光栅化(Rasterize)是指把东西画在

计算机图形学目录

坐标 [1] 矩阵与坐标 纹理 光照 [1] Phong Lighting Model [2] Blinn-Phong Lighting Model [3] Materials [4] Lighting maps [4.1] 漫反射贴图(Diffuse maps) [4.2] 镜面反射贴图(Specular maps) [4.3] 发现贴图(Normal map) [4.4]

图形学初识--深度测试

文章目录 前言正文为什么要有深度测试?画家算法循环遮挡 深度测试当代最常见实现方式?总述什么是z-buffer呢?z-buffer从哪来呢?如何利用z-buffer实现深度测试?举个例子 结尾:喜欢的小伙伴点点关注+赞哦! 前言 本章节补充一下深度测试的内容,主要包含:为什么要有深度测试?深度测试现代实现方式? 正文 为什么要有深度测试? 画家算法 当我们渲染两个三角形

图形学初识--屏幕空间变换

文章目录 前言正文为什么需要屏幕空间变换?什么是屏幕空间变换?屏幕空间变换矩阵如何推导?问题描述步骤描述 结尾:喜欢的小伙伴点点关注+赞哦! 前言 前面章节主要讲解了视图变换和投影变换,此时距离在屏幕空间显示也就只差一步之遥了,只需要将NDC坐标转换为屏幕空间坐标即可!有了前面一些章节的学习,相信大家对于本章节的学习还是很容易的! 正文 为什么需要屏幕空间变换? 因为经过

计算机图形学入门05:投影变换

1.投影变换         上一章已经介绍了投影变换,就是将三维图像投影到二维平面上,而投影变换又分为正交投影(Orthographic Projection)和透视投影(Perspective Projection)。如下图: 正交投影         没有近大远小的现象,无论图形与视点距离是远是近,图形多大画出来的图形就是多大。假设相机距离拉到无限远,远近物体的大小无限接近,所以显

计算机图形学入门03:基本变换

变换(Transformation)可分为模型(Model)变换和视图(Viewing)变换。在3D虚拟场景中相机的移动和旋转,角色人物动画都需要变换,用来描述物体运动。将三维世界投影变换到2D屏幕上成像出来,也需要变换。 1.二维变换 1.1缩放变换         如上图所示,把一个图形缩小为原来的0.5倍,那么就需要x坐标变为0.5倍,y坐标也变为0.5倍,这样的变

图形学初识--空间变换

文章目录 前言正文矩阵和向量相乘二维变换1、缩放2、旋转3、平移4、齐次坐标下总结 三维变换1、缩放2、平移3、旋转绕X轴旋转:绕Z轴旋转:绕Y轴旋转: 结尾:喜欢的小伙伴可以点点关注+赞哦 前言 前面章节补充了一下基本的线性代数中关于向量和矩阵的背景知识,这一节咱们讲解一下在二维和三维中常用的空间变换,主要包括:平移、旋转、缩放等! 正文 矩阵和向量相乘 假设有一个矩

计算机图形学入门03:二维基本变换

变换(Transformation)可分为模型(Model)变换和视图(Viewing)变换。在3D虚拟场景中相机的移动和旋转,角色人物动画都需要变换,用来描述物体运动。将三维世界投影变换到2D屏幕上成像出来,也需要变换。  1.缩放变换         如上图所示,把一个图形缩小为原来的0.5倍,那么就需要x坐标变为0.5倍,y坐标也变为0.5倍,这样的变换叫做缩放(Sc

线代与图形学的暧昧二三事

A Swift and Brutal Introduction to Linear Algebra 计算机图形学依赖于线性代数、微积分、统计...物理方面涉及到光学(波动光学:不再假设光是直线传播,作为一种光波与物体表面材质进行作用接触,如何生成不同的外观)和力学,还涉及到信号处理(分析走样、反走样技术,解决信号处理的事情),数值分析也很重要(解决一些复杂的数学计算:积分、渲染,解决递归定义的积

太极图形学——渲染——光线追踪概念部分

程序动画和渲染 程序动画和渲染有一些类似的地方,都是找到合适的像素并填上颜色,但是要把一个图片渲染的好看是有一些规则来指导的 光线追踪包含哪些呢 果壳中的光线追踪器 实时条件下的光线追踪:需要进行光栅化的处理 离线条件下做cg的话:通过光线追踪实现,现在已经有了实时的光追效果(比较吃内存) 如果不考虑实时性的化,光追的效果会更好,同时概念也更加便于理解 人是怎么看世界的

图形学概述

图形学应用 游戏 游戏的画面好坏如何鉴定呢? 看游戏画面是否够亮:渲染中全局光照的好坏                                                                 《只狼》 为什么卡通游戏画面看起来是卡通的呢?

图形学初识--纹理采样和Wrap方式

文章目录 前言正文1、为什么需要纹理采样?2、什么是纹理采样?3、如何进行纹理采样?(1)假设绘制区域为矩形(2)假设绘制区域为三角形 4、什么是纹理的Wrap方式?5、有哪些纹理的Wrap方式?(1)Repeat(2)Mirror_Repeat(3)Clamp_To_Edge(4)Clamp_To_Border 6、如何实现纹理的Wrap方式?(1)Repeat(2)Mirror_Re