自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture15 光线追踪3 - 辐射度量学、渲染方程(Ray Tracing 3) - 课后笔记

光线追踪3 - 辐射度量学、渲染方程和全局光照内容:辐射度量学光线传输(Light transport)反射方程(The reflection equation)渲染方程(The rendering equation)全局光照(Global illumination)辐射度量学Radiant energy:辐射能量,单位位焦耳J,在图形学中几乎不用Radiant flux(power):单位时间内辐射出的能量Radiant Intensity:在单位时间内,往每个立体角(So

2020-06-22 19:34:34 341

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture14 光线追踪2 - 加速结构(Ray Tracing 2 - Acceleration) - 课后笔记

光线追踪2 - 加速结构(Ray Tracing 2 - Acceleration)对AABB结构优化来加速光线追踪的速度均匀网格(Uniform grids)空间划分(Spatial partitions)均匀空间划分(Uniform Spatial Partitions)上一节课中,使用了AABB包围盒的方式来判断物体,然后判断光线是否和包围盒相交,如果和包围盒相交,再判断是否和内部的物体相交。均匀空间划分就是直接使用了这个思想。比如有下面这个场景:先找到整个场景的包围盒

2020-06-17 19:59:07 358

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture13 光线追踪1(Ray Tracing 1 - Whitted-Style Ray Tracing) - 课后笔记

光线追踪1 (Ray Tracing 1 - Whitted-Style Ray Tracing)课程一共分为四个大的板块,目前已经学习了光栅化和几何,可以实现图1和2的效果,下面要来学习第三个大的板块,光线追踪。为什么要使用光线追踪?在学习光栅化时,我们在进行着色的过程中实现光照效果的时候可以发现,我们实现了环境光、漫反射、镜面反射,但是确没有做出阴影。因为光栅化考虑的只是一个局部的着色的过程,只是对那一个像素周围的区域进行着色,并没有考虑到全局进行着色,所以在实现物体表面的光照效果的时候,无法实

2020-06-14 23:20:47 1193

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture11 几何3(Geometry 3) - 课后笔记

几何2 - 曲线和曲面(Geometry 2 - Curves and Surface)上一节提到,要表现一些复杂的几何模型有两种方法:隐式几何显式几何本节课讲的为显式几何显式几何(Explicit Representations)显式几何有两种方式:一种是像三角形直接定义出来另一种是通过参数映射的方法定义表面显式几何有许多的方法,如:下面介绍几种方法:点云(Point Cloud)点云是最简单的一种方法,点云是将每一个点就当作一个点,并不像三角形那样把点链接起来,而是只是

2020-06-10 10:16:22 761

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture9 着色3(Shading 3) - 课后笔记

着色3(Shading 3)重心坐标纹理查询纹理应用插值 - 重心坐标 (Barycentric Coordinates)为什么要插值?能够获得三角形三个固定顶点的属性,但是不知道三角形内部的属性希望三角形内部属性能有一个平滑的过度效果可以插值的属性有哪些?纹理坐标、法向量、颜色等等如何进行插值?使用重心坐标上图中(α,β,γ)就是点(x,y)的重心坐标。重心坐标是定义在一个三角形上的,三角形平面上的任何一点(x,y)都可以表示为三个顶点坐标的线性组合,如上图α,β

2020-06-03 18:55:17 415 8

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture8 着色2(Shading 2) - 课后笔记

着色2(Shading 2)Blinn - Phong 光照模型包括 : 漫反射、镜面反射、环境光。上一节讲了漫反射,下面讲一下镜面反射和环境光。镜面反射(Specular reflection)镜面反射:当物体的表面很光滑的时候,在一定的角度范围内观察这个平滑的表面表面时,能够看到一个高光的效果。如在用光源照射金属时,在一定的角度内可以看到一个有一定大小的光点,但你偏离一定的角度之后,就不能再看到这个高光效果。在漫反射的部分已经讲过,漫反射的着色与观察方向无关,而镜面反射不同,镜面反射的效果是与

2020-06-02 11:19:29 396

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture7 着色(Shading) - 课后笔记

着色(Shading)可视性 / 遮挡Z - 缓冲 (Z - buffering,深度缓冲)着色光照 和 着色 (illunmination & Shading)画家算法(Painter 's Algorithm)先注明一下,这里的画家指的是油画家。画家算法的提出主要是为了实现深度缓冲画家在画油画是,总是会从远景开始画,然后逐渐画近景覆盖远景,比如下图:最先画出一个蓝色的山,然后接着画绿地覆盖蓝色的闪,然后再接着画上几棵树覆盖绿地。参考这个画家算法,我们要在图形学中

2020-05-30 11:05:28 540

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture6 光栅化2(抗锯齿) - 课后笔记

光栅化2(抗锯齿)(Rasterization 2 - Antialiasing)抗锯齿的内容包括:采样理论(Sampling theory)抗锯齿的实践应用(Antialiasing in practice)接着上节我们采样是在每个像素的中心进行采样,然后判断这个像素中心是否在三角形内,如果是三角形内就对其进行上色最终得到的效果就是由多个像素均匀的正方形像素所组成的三角形:emmmm,和我们想要的三角形不太一样,多了许多的棱角,不够平滑在这个棱角很多的三角形中发生了一些采样错误,

2020-05-27 19:21:07 893

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture5 光栅化(三角形的离散化) - 课后笔记

光栅化(三角形的离散化)(Rasterization1 (Triangles))接着上面的透视投影开始:如何确定一个近平面的 l(left) , r(right) , b(bottom) , t(top)四个面?通常使用竖直可视角度(vertical field-of-view , fovY)和长宽比(aspect ration)来确定fovY就是链接Camera底面的中点和顶面的中点所成的角度,长宽比 = width/height。如何确定近平面的长和宽?知道Camera到近平面的距离,然后就可

2020-05-24 17:52:36 684

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture4 观测变换(viewing transformation) - 课后笔记

观测变换(Viewing transformation)视图 / 相机变换(View / Camera transformation)投影变换(Projection transformation)正交投影(Orthographic projection)透视投影(Perspective projection)视图/相机变换(View / Camera transformation)什么是视图变换?思考下如何去拍摄一张照片:找到一个好地方,并且调整人的姿势,(只对模型进行了变换(m

2020-05-23 17:20:00 742

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture3 变换(transformation) - 课后笔记

变换为什么要变换?变换有两种,一种 model 和 view 变换,其中model变换中包括缩放, 而view则主要是讲3D投影到2D的画面上二维变换要找到一个变换,实际上就是寻找变换后得坐标(x‘,y’)和变换之前的坐标(x,y)之间的关系,即 x’ = Mx其中M就是变换矩阵,根据M*x就可以得到变换之后的坐标。缩放(Scale)(x’,y’)和(x,y)的关系写成矩阵的形式就是缩放又可以分为均匀缩放和非均匀缩放:若Sx和Sy不相等,则x轴和y轴的拉伸程度不通,最终得到的结果就是

2020-05-23 17:12:34 706

原创 GAMES101-现代计算机图形学入门-闫令琪 - lecture2 线性代数基础 - 课后笔记

向量的点乘在图形学中,点乘的作用:能够计算两个向量之间的角度,例如计算曲面和曲线之间的角度,用于计算两个方向向量之间距离有多近,越近其cos值越大,越小则越远,值为-1~1.能够将一个向量投影到另一个向量b投影到a上, 则 b的投影 = k*a,其中k是b在a上投影的长度,而用投影向量的长度再乘以a,就能得到以a为方向的b的投影3.可以用于向量的分解,比如将一个向量分解到两个方向上决定向量是指向前还是指向后方假设a为前方,则b和a的点乘值>0,b指向前方;而c和a的点乘的

2020-05-23 17:03:09 512

原创 mybatis学习笔记3——mybatis全局配置文件

SqlMapConfig.xml(可以为其他名字)为mybatis的全局映射文件,其配置内容如下:properties(属性)setting(全局配置参数)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境集合属性对象)    environment(环境...

2018-09-21 13:17:03 212

原创 Django URL name详解

开场白不多说,下面直接开始。先上一下完成的工程目录(注:使用的编译器为Pycharm,python版本为3.6,django版本为2.0) 1.先打开django目录下的urls.py文件,文件代码如下: 我们看到url列表中有path('add/<int:a>/<int:b>', learn_views.add, name='add2')那...

2018-09-20 11:59:15 1541

原创 mybatis学习笔记2——mybatis开发dao层

原始dao开发方法在原始的dao层的开发方法中,程序员需要自己写dao的接口和实现类。需要向dao实现类中注入SqlSessionFactory,在方法体内通过SqlSessionFactory来创建SqlSessionUser.xml<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLI...

2018-09-12 19:01:48 70

转载 经典Java面试题收集

转载自:http://geek.csdn.net/news/detail/256207 ,若需删除联系本人  1、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面: - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。 - 继承:继承是从已有类得到继承信息创建新类的过程。...

2018-09-12 18:30:49 54

原创 mybatis学习笔记1——基础知识

原生JDBC程序中问题的总结例:使用jdbc查询mysql数据库中用户表的记录public String searchStudent(String number) throws SQLException{ conn = DBUtil.getConnection(); String sql = "select * from student"+ " where number=...

2018-09-12 18:25:27 197

原创 使用java的swing组件写拼图

直接上代码吧,并不是特别难以理解的东西 就不多说了开始类:public class demo extends JFrame{ static demo jfr = new demo(); static String path = ""; //拼图矩阵 static Icon[][] icon = new ImageIcon[3][3]; static int map[][] ...

2018-08-20 11:10:02 865 1

原创 java动态代理详解

动态代理是java中一种最常用的机制,spring中的核心思想就是IOC和AOP,IOC是依赖注入用到了工厂及反射,而AOP的实现则是通过动态代理。代理类在程序运行时创建代理类的方式叫做动态代理。与静态代理自己定义代理类,并且代理类在程序运行之前就编译完成的方式不同,动态代理的代理类并不是由代码所定义的,而是由系统的运行时动态生成的。动态代理的用处:既然动态代理是AOP的实现,动态代理...

2018-08-17 16:21:50 556

原创 Spring学习笔记——IOC和DI

什么是IOC?所谓控制反转,是将我们代码里面需要实现的创建对象,以及创建对象所依赖的对象的创建的过程,全部交由容器来进行实现。这样我们就不必使用new关键字来进行创建对象,从而降低了耦合度。 那么什么是DI呢?2004年,Martin Fowler探讨了同一个问题,既然IOC是控制反转,那么到底“哪些方面的控制被反转了呢?”,经过详细的分析和讨论后,他得出了答案:“获得依赖对象的这...

2018-08-13 10:15:33 167

原创 JAVAWEB——初识AJAX

一、简介 AJAX即“AsynchronousJavascriptAndXML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。Ajax不是一种新的编程语言,而是使用现有标准的新方法。AJAX可以在不重新加载整个页面的情况下,与服务器交换数据。这种异步交互的方式,使用户单击后,不必刷新页面也能获取新数据。使用Ajax,用户可以创建接近本地桌面应...

2018-08-02 19:19:42 104

原创 XML解析之DOM解析详解

一、概念xml文件多用于信息的描述,所以在得到一个xml文档之后按照xml中的元素取出对应的信息就是xml的解析。Xml解析有两种方式,一种是DOM解析,另一种是SAX解析,两种操作的方式如图。   二、DOM解析 基于DOM解析的xml分析器是将其转换为一个对象模型的集合,用树这种数据结构对信息进行储存。通过DOM接口,应用程序可以在任何时候访问xml文档中的任何...

2018-06-05 16:39:34 15436 3

原创 在idea配置的请况下遇到java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

今天在使用idea创建javaweb工程,使用jdbc的时候出现了ClassNotFound的问题。废话不多说,直接上解决方案:打开project structure->Artfacts,直接双击右边的jar包添加进项目就行...

2018-05-07 22:48:14 678 1

原创 java抽象类

Java抽象类再Java语言中,存在创建专门的类来作为父类,这种类就被称为抽象类。抽象类有点类似“模板”的作用,其目的是根据他的格式来创建和修改新的类。下面先看一个例子:abstract class Animal { public abstract void description();}class Dog extends Animal{ public void description(...

2018-03-03 15:35:00 107

原创 android图片二值化

android实现图片二值化的主要计算类:class ImageHelper { public static Bitmap BinaryImage(Bitmap graymap,int value){ int width=graymap.getWidth(); int height=graymap.getHeight(); //创建二值化...

2018-02-24 21:04:20 304

原创 android打开图库图片

一个从相册里打开图片并显示的小程序,供给同为初学者的大家参考。public class MainActivity extends AppCompatActivity { private Button addPic; private TextView imgPath; private ImageView imageshow; private final int ...

2018-02-24 20:54:57 4640

原创 android图像边缘提取(Rober算子)

效果展示:下面帖主要的图片计算类:图片灰度化:public class BitmapUtil { public static Bitmap bitmap2Gray(Bitmap bmSrc) { // 得到图片的长和宽 int width = bmSrc.getWidth(); int height = bmSrc.getHeight();...

2018-02-24 20:37:54 1217

javaswing拼图

用javase的swing组件写的拼图可以实现从3*3到5*5

2018-09-09

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除