USTC中国科技大学《计算机图形学》暑期课程_Panel_Working

合集下载

计算机图形学基础教程(第2版)

计算机图形学基础教程(第2版)

图书前言
本书是在2005版《计算机图形学基础教程》的基础上修订而成。 《计算机图形学基础教程》是根据作者在清华大学多年教学实践,并参考了国内外最新的相关教材和部分最 新的研究成果编写而成。第2版教材主要修订了以下内容: 1.增加了第1章的1.5节,介绍清华大学近年来的最新研究成果。 2.增加了第3章的3.9节,介绍格表示、简化与细分。 3.增加了第4章的4.1节,介绍图形绘制的基本概念和流程,提高本章整体上的可读性。 4.将第4章4.8节层次细节的内容移入第3章的3.9节,增加有关景物模拟的内容。 5.删除第5章VRML的内容,改写Open GL的内容,增加一些常见的功能,并给出更多的示例。 本教程第1版出版4年来,被国内一大批高等院校采用,相关的老师、同学及读者提出了许多宝贵的建议,在 此表示衷心感谢。徐昆、来煜坤参与了第2版教材的修订,在此也一并表示感谢。
序言
清华大学计算机系列教材已经出版发行了近30种,包括计算机专业的基础数学、专业技术基础和专业等课程 的教材,覆盖了计算机专业大学本科和研究生的主要教学内容。这是一批至今发行数量很大并赢得广大读者赞誉 的书籍,是近年来出版的大学计算机教材中影响比较大的一批精品。
本系列教材的作者都是我熟悉的教授与同事,他们长期在第一线担任相关课程的教学工作,是一批很受大学 生和研究生欢迎的任课教师。编写高质量的大学(研究生)计算机教材,不仅需要作者具备丰富的教学经验和科 研实践,还需要对相关领域科技发展前沿的正确把握和了解。正因为本系列教材的作者们具备了这些条件,才有 了这批高质量优秀教材的出版。可以说,教材是他们长期辛勤工作的结晶。本系列教材出版发行以来,从其发行 的数量、读者的反映、已经获得的许多国家级与省部级的奖励,以及在各个高等院校教学中所发挥的作用上,都 可以看出本系列教材所产生的社会影响与效益。

中科大-高级计算机图形学8-2

中科大-高级计算机图形学8-2


非常有效,因为在经过所有的操作后,减少了许多不必 要的映射
13
二维纹理
纹理:以数组形式存储在处理器内存里的二维 图像,此时数组元素称为纹素(texel)
• 由应用程序生成或照片扫描输入 • 一般把纹理坐标缩放到[0,1]区间
把离散数组看成一个连续的二维矩形区域纹理 图案T(s,t),独立变量s和t是纹理坐标
8
环境映射(反射映射)
凹凸映射
纹理映射
几何模型
纹理映射后
9
环境映射
10
凹凸映射
11
三种映射的共同点
作为片段处理的一部分,改变单个片段的 明暗值 都与存储为一维、二维或三维数字图像的 贴图有关 保持低的几何复杂性,但能产生复杂几何 的视觉效果 都可能产生走样误差
12
映射在什么地方进行?
映射技术是在绘制流水线的最后阶段实现的

26
两步映射
解决映射问题的另外一种方法 首先把纹理映射到一个简单的中间曲面上 例如:映射到圆柱上
27
圆柱面映射
高为h,半径为r圆柱的参数方程是
x = r cos 2π u y = r sin 2πu , 0 ≤ u,v ≤ 1 z=hv
映射函数:
s=u t=v
从纹理坐标到圆柱面上没有变形 适合于构造与无底的圆柱面拓朴同构的曲 面上的纹理
s
18
逆映射
我们需要的是逆向操作
• •
给定一个像素,我们想知道它对应于对象上的哪个点 给定对象上的一个点,我们想知道它对应于纹理中的 哪个点
此时需要如下形式的映射
s = s(x,y,z) t = t(x,y,z)
这样的函数一般是很难求出来的
19

《计算机图形学》大作业项目汇报

《计算机图形学》大作业项目汇报

中国科学技术大学《计算机图形学》大作业项目汇报扫地机器人顾欣玮1葛子恒1冯睿蠡11中国科学技术大学2014级数学科学学院【元件】单片机×1电机×2超声波测距仪×1红外信号接收器×1遥控器×1轮胎×2万向轮×1简易清洁装置(DIY)【项目介绍】我们通过超声波探测器,红外遥控接收装置和两个电机实现在不预先知道区域形状条件下的遍历多连通区域。

考虑到现实的可操作性,我们设计了共计2种算法来实现这一功能。

【项目制作与设计】算法1:蒙特卡洛式扫地区域形状任意,初始位置任意,在碰到障碍物或者墙壁后,随机偏转一个角度,继续前进,直至给定时间。

对于不是很复杂的区域尤其是单连通区域有很高的清扫效率。

算法2:按行遍历式扫地区域形状在x方向上为凸的,初始位置在y方向上最低处,车的行进方向与x轴同向。

算法流程:(a)(1)检测左方是否有障碍物,无则左行直至遇到障碍物,有则进入(2)(2)检测右方是否有障碍物,无则右行直至遇到障碍物(b)遇到障碍物后,执行:(1)右方遇到障碍物,且y方向上前方无障碍,则向y方向前进一小段距离,左转回到(a)(2)左方遇到障碍物,且y方向上前方无障碍,则向y方向前进一小段距离,右转回到(a)(3)左或右方有障碍物,且y方向上前方有障碍物,则左转90°,把x,y轴对调,回到(a)继续执行,直至第二次遇到左或右方有障碍物,且y方向上前方有障碍物时停止。

对于在x方向上凸的多连通区域,基本可以遍历,实际操作中,要求区域尽量简单,否则多次转向累计的误差可能很大。

【项目分工】我们小组由三人组成顾欣玮负责小车的拼装与电路连接冯睿蠡及葛子恒负责算法设计,以及对算法的实验修正【感想与不足】由于时间和经验的不足,以下诸方面没有制作完善:●缺少相关的经验,没有充分考虑到实际情况,初始设计的许多算法在实际运行中效果极为不理想●小车有时会出现不走直线的现象,这时对整个算法的实现由巨大威胁●没有去实现一些更为复杂的算法,主要时间花费在调试小车的各种bug上,对adiuno的编程语言存在许多疑惑【致谢】中国科学技术大学创客实验室为本项目提供了大量支持。

2015年中国科技大学《计算机图形学》暑期课程_Structure-aware Geometry Processing_郑友怡

2015年中国科技大学《计算机图形学》暑期课程_Structure-aware Geometry Processing_郑友怡

•Introduction •Extracting structure •Manipulating structure •Future direction•Introduction •Extracting structure •Manipulating structure •Future direction•higher-level info beyond low-level mesh –Parts or segmentation information–Structural relations between parts–Correspondence to relevant models, etc.Why Structures?•Introduction•Extracting structure•Manipulating structure•Future directionOutlineExtracting Structure•Analysis of individual models (parts, parts parameters)•Analysis of shape collections (co-analysis)•Shape segmentation•Structural analysisAnalysis of Individual Models•What are the parts?–Convex decomposition–User annotated–Learning•Supervised learning (e.g., classifiers on labeled parts) •Unsupervised learning (e.g., spectral clustering)Shape Segmentation[Wang et al. 2013][Zheng and Tai 2010]•Regularity–Symmetries–Repetitions•Structure hierarchy Structural Analysis[Wang et al. 2013] [Bokeloh et al.2011][Zhang et al. 2013]•How do the parts relate in/across models? –Shape co-segmentation•How do the parts vary across the models?–Shape exploration–Shape synthesisAnalysis of Shape Collections[Ovsjanikov et al. 2011][Huang et al. 2011] [Huang et al. 2014]•How do the parts relate in/across models?[Huang et al. 2011]•Joint shape segmentationSegmentation ParameterizationMulti-way Joint Segmentation•A common structure?Recurring Part Arrangements[Zheng et al. 2014] (Eurographics Best Paper Nomination Award)•How do the parts vary across models?Shape ExplorationInput collectionExploration via deformation Input collection…Input collection… ………M1S(M1)M2S(M2)M4S(M4)M3S(M3)……………Descriptor space M 1S(M 1)M 2S(M 2) S(M 1(D))M 1(D)DDeform M 1 such that S(M 1(D)) ≈ S(M 2)Descriptor space M 1M 2Deform M 1 such that S(M i (D)) ≈ S(M i)… …… …•Coupling structure-from-motion with symmetry detectionStructure in Images[Ceylan et al. 2014]•Introduction •Extracting structure •Manipulating structure •Future directionOutline•3D content creation–Modeling by deformation –Modeling by part compositionManipulating Structure[Funkhouser et al. 2004][Gal et al. 2009]Inspiration ⇒ a readily usable digital 3D modelInspiration?Modeling: 3D content creation•Inspiration = real-world data Realistic reconstruction•Creation of novel 3D shapes•Inspiration = design, sketch, photo, other examples sketchHigh demand in VFX, games, simulation, VR, …Focus on creativemodeling•2D-to-3D: an ill-posed problem–Shape from shading, sketch-based modeling, …•Creation from scratch is hard: job for skilled artistsMain reason why graphics is not as ubiquitous as we wanted it to be Jim Kajia’s SIG’11 Award Talk3D content creation is hard•Models created are meant for subsequent use •Desire to create readily usable 3D models•Models created are meant for subsequent use•Desire to create readily usable 3D models•Usability: higher-level info beyond low-level mesh–Part or segmentation information–Structural relations between parts –Hard shape analysis problems!•Reuse existing 3D models and associated info•Data- or model-driven approach: creation is driven by or based on existing (pre-analyzed) models•Reuse existing 3D models and associated info•Data- or model-driven approach: creation is driven by or based on existing (pre-analyzed) models•New model created by varying existing model(s) •Paradigm I: much like shape editingVariation as modification of an existing model,e.g., a warp or a deformation•New model created by varying existing model(s)•Paradigm I: much like shape editing•Paradigm II: shape synthesisVariation as modification of an existing model, e.g., a warp or a deformationVariation by part composition , from multiple models•Available models are assumed to be structurally or functionally valid or proper•New model should maintain that validity, but what is the essential structures to preserve?•Conflicting goals = challenge = “fit & diverse”:–Fit: structure preservation from existing models–Diverse: encourage significant deviation from examplesNot too structure-aware•iWires: [Gal et al. 2009]•Component-wise controllers: [Zheng et al. 2010] •Photo-inspired modeling: [Xu et al. 2011] •Structural retargeting: [Lin et al. 2011, Bokeloh et al. 2012, Bao et al. 2012, Yeh et al. 2013, Zhang et al. 2013] •Topology-varying blending: [Alhashim et al. 2014]Modeling by deformation•Wires as control handles [Singh & Fiume 1999]•Edits preserve structural relations among wiresiWire:analyze-and-edit[Gal et al. 2009]•Cuboids and generalized cylinders as control handles •Use the analyze-and-edit paradigm like iWires•Edits preserve structural relations among controllers, mainly symmetry and proximityComponent-wise controllers [Zheng et al. 2011]•Not editing; modeling inspired by a single photograph •Warp an existing 3D model to fit object silhouette •Structure preservation ensures a coherent 3D modelPhoto-inspired modeling [Xu et al. 2011]•Use the controllers from [Zheng et al. 2011][Xu et al. 2011]•Use the controllers from [Zheng et al. 2011]photo Retrieved candidatemodel[Xu et al. 2011]Result of deformation to fit silhouettephoto Retrieved candidate model•Use the controllers from [Zheng et al. 2011][Xu et al. 2011]•Use the controllers from [Zheng et al. 2011][Xu et al. 2011]by symmetryby proximity •Use the controllers from [Zheng et al. 2011][Xu et al. 2011]by symmetryadditional optimization•Use the controllers from [Zheng et al. 2011][Xu et al. 2011]by symmetry by proximityadditional optimizationoutput •Use the controllers from [Zheng et al. 2011][Xu et al. 2011] by proximity by symmetry。

计算机图形学大作业文档

计算机图形学大作业文档

计算机图形学课程结课大作业学号5011110122学生姓名阿依萨丽姑丽·麦麦提专业计算机科学与技术班级计算机15-1班塔里木大学教务处制《计算机图形学》课程结课作业提示:1、请将答案写在此文档的相应位置,图形需在VC++ 6.0下客户区屏幕中心绘制,大小可以根据个人需求定制;2、请将相关的文档,包括程序的相关文档进行压缩,并将压缩文档上传到ftp://210.26.176.123“大作业电子版文档”文件夹下命名为“班级-学号-姓名”,纸质版于2014年12月19日下午18:00—20:00交到逸夫楼109。

一、选题(此题5分)请根据你抽中的题号,正确理解其所对应的简笔画。

请写出你选中的题号,将图粘贴到下方,并为其取一个合适的名字。

我选的题号是:20号图,名字为:房子。

二、组成(此题10分)请分析你所选择的题目,由哪些简单图形组成,并写出其所对应的函数或原理。

请在下方表格中简要写明函数的原型或原理的名字即可。

如果表格行数不够,请自行添加。

三、参数说明(此题15分)请写出相关函数的参数,并分析出每个参数的含义,要求此题务必写清每个函数的作用和使用方法。

画图的时候我使用了绘制直线段函数MoveTo()和LineTo()。

直线段的绘制过程中有一个称为“当前位置”的特殊位置。

每次绘制直线段都是以当前位置为起点,直线段绘制结束后,直线段的终点又成为当前位置。

由于当前位置在不断更新,所以使用LineTo()函数可以绘制连续直线。

(1)设置起点位置函数cpoint MoveTo(int x,int y);cpoint MoveTo(POINT point);参数:新位置的点坐标x和y;point是POINT结构或CPoint。

本函数只将画笔的当前位置移动到坐标x和y处,不画线。

(2)绘制直线段函数BOOL LineTo(int x,int y);BOOL LineTo(POINT point);参数:直线段终点坐标x和y;point是POINT结构或CPoint对象。

高级计算机图形学_更复杂的交互程序_中科大

高级计算机图形学_更复杂的交互程序_中科大
口原点位于(x,y),宽度为width,高度为height

void glutPostWindowRedisplay(int id)
• 通知标识符为id的窗口重新显示
构件(widgets)


许多窗口系统提供了一个工具包或者一组库函 数用来建立用户界面,界面中用到了一些特殊 类型的窗口,称为构件(widgets) 构件集中包含下述工具:
菜单回调函数

void glutAttachMenu(int button)
• 将当前菜单关联到鼠标按钮button上(GLUT_RIGHT_BUTTON、
GLUT_MIDDLE_BUTTON、GLUT_LEFT_BUTTON)
定义一个简单菜单

在main()中
menu_id = glutCreateMenu(mymenu); glutAddMenuEntry(“Clear Screen”, 1); glutAddMenuEntry(“Exit”, 2); glutAttachMenu(GLUT_RIGHT_BUTTON); Clear Screen Exit 当按下右按钮时, 就会出现的条目 标识符
旋转的正方形

空闲回调函数:当事件队列为空时被执行
void glutIdleFunc(void (* f)(void))

利用空闲回调函数改变theta值,使正方形绕原点旋转
• •
在main()函数里,注册空闲回调函数: glutIdleFunc(idle); 空闲回调函数的定义:
void idle() { theta += 2.0; if (theta > 360.0) theta -= 360.0; glutPostRedisplay(); // 请求重绘 }

USTC中国科技大学《计算机图形学》暑期课程_计算机图形学进展_刘利刚

USTC中国科技大学《计算机图形学》暑期课程_计算机图形学进展_刘利刚
计算机图形学进展
刘利刚 中国科学技术大学
我们的显示设备是二维的
2D图像
0.6 R + 0.3 G + 0.1 B
我们生活的世界是三维的
如何表达三维物体的表面?
陶瓷兔子实物的照片
3D模型:三维坐标点的表达方式
采用不同密度的点 来表达的3D兔子模型
3D物体的数字表达:点和三角面
三角面片
线 点
80
85
90
95
00
05
10
图像
几何
Visual Computing
• Visual media
– Computer graphics to visual information
Image
Video
Geometry
Animated geometry
计算机图形学的主要内容?
1. 建模 Modeling
3D设计(3D建模)
将想象中的3D物体构建出来
3D Modeling from X
Sketches
Hand drawing
Point Clouds
3D Model
Images
3D Scanner
Taking Photos
1.1 3D扫描建模
3D数字采集设备
基于深度相机的3D扫描
通过深度相机设备测量物体表面的点坐标数据, 然后通过数学算法构建3D模型
3D打印
3D扫描 3D动画 3D设计 广泛的行业应用 3D娱乐 3D交互
3D科技
3D科技: 以3D数据为表达信息 以3D处理为技术手段
城市规划
3D交互:手势、身体等
3D交互:虚拟头盔+全息影像

《计算机图形学基础教程(Visual C++版)》——图形学教学新思路

《计算机图形学基础教程(Visual C++版)》——图形学教学新思路

《计算机图形学基础教程(Visual C++版)》——图形学教学
新思路
汪汉友
【期刊名称】《计算机教育》
【年(卷),期】2010(000)015
【摘要】@@ 计算机图形学(Computer Graphics, CG)是计算机科学与技术专业一门重要的专业课,主要讲解基于光栅扫描显示器的像素级的图形生成原理和算法,内容包括:直线的扫描转换、图形的填充、二维三维图形变换和裁剪、自由曲线曲面、消隐、真实感图形显示等.
【总页数】1页(P159)
【作者】汪汉友
【作者单位】清华大学出版社,计算机与信息分社
【正文语种】中文
【相关文献】
1.基于C++平台的计算机图形学算法实现 [J], 吴峥;肖晗
2.Visual C++ .NET应用与开发系列讲座--Visual C++ .NET概述 [J], 丁有和
3.Visual C++(MFC)与Visual C++(.NET)应用于游戏设计 [J], 郑赟
4.《计算机图形学基础教程》(第2版) [J],
5.Visual C++语言开发经验之四用Visual C++语言进行色彩处理 [J], 李爱光因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Working towards SIGGRAPH as a PhD Student
USTC Summer School @ Hefei 2015
Kai (Kevin) Xu
徐凯
Shenzhen Institutes of Advanced Technology National University of Defense Technology
Targeted audience of this talk
•A PhD student who is
–Not a genius
–Dreaming of a SIGGRAPH paper
–Ready to work very hard
–Ready to enjoy the exciting and joyful journey
Doing SIGGRAPH as a PhD student
•A typical path:three stages
–Get yourself well-prepared
–Find a good mentor
–Collaborate well
Get yourself well-prepared
•Before you start, ask yourself: Why do I do PhD?
–Graduate, or aim higher?
–Many ways to aim high
•SIGGRAPH is just one of them
–But if you aim at SIGGRAPH, you should probably •Try to be an expert of your field, and be proud of it!
•Try to make a name on your famous work
•Try to get into the “circle” if you are interested
Get yourself well-prepared
•Most need to struggle with (bitter) startup –Reading
•Read as many papers as possible (try to be an expert)–Coding
•Reproduce state-of-the-art papers
–Writing
•Write up your first few papers
–Trying
•Swallow some rejections
Get yourself well-prepared
•Know the area well (try to be an expert!)–The fundamental problems
–The milestone works
–The well-established methods and tools
–The front of research
–…
Get yourself well-prepared
•Know the community well (try to be an expert!)–Who are the big bosses?
–Who are the most active guys?
–Who originated what topic?
–Who did excellent work on what topic?
–…
Find a good mentor •A top-guy mentor would
–Help you MAKE a SIGGRAPH paper
•What is a SIGGRAPH-able idea
•What is SIGGRAPH level research
•What is the SIGGRAPH quality of presentation
•How to get your paper accepted by SIGGRAPH
•…
–Guide you into the community
•Academic service
•Get to know more people
•…
Find a good mentor

I am very lucky to work with …
Hao (Richard) Zhang
Simon Fraser University Danny Cohen-Or Tel-Aviv University
Find a good mentor
•What is a good mentor for SIGGRAPH?
–Active in the field
–Good at encouraging students
–What else?
Expect more on yourself!
Collaborate with your mentor
•Three ways of working with a top guy –As a PhD student
•Less self-preparation on research
–As a visiting student
•Need good self-preparation
–As a collaborator
•Somewhat experienced
Collaborate with your mentor
•Be open
•Be professional
•Build trust
•Build friendship
The most productive way of working with your supervisor is to tread him/her as a friend, rather than a commander.
Good luck!。

相关文档
最新文档