自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (4)
  • 收藏
  • 关注

原创 全息成像与集成成像原理

全息成像与集成成像原理全息成像引言成像原理显像过程集成成像显示原理摄像原理全息成像引言    广义上的全息投影技术并不单指通过某种特定方 法使物体成像的显像技术(包括一些伪全息投影技 术),而是一类能记录并再现物体真实三维影像的技术 的总称,本篇论文就选取全息投影技术作为研究对象。 当前的全息投影技术主要发展出透射全息投影技术、360度全息投影以及空气投影与交互技术三种,但还是 目前还存在一...

2020-04-20 16:16:15 5220

原创 真三维立体显示技术分类、特点及展望

真三维立体显示技术分类、特点及展望真三维系统显示技术特点几种主流的真三维系统显示技术PerspectaFelix3D 显示器DepthCube展望参考文献真三维系统显示技术特点真三维显示是三维显示的最终目标。真三维显示的特点如下:(1)可实现人机交互和动态三维显示;(2)具有移动视差,观察者可任意移动;(3)可具有超过 1 亿体元的三维图像分辨率;(4)可进行三维测量;(5)无需佩戴...

2020-04-17 15:48:02 4444 2

原创 Nvidia Video Codec SDK——AppDecImageProvider动态模糊

Nvidia Video Codec SDK——AppDecImageProvider动态模糊Cpp文件cu文件核函数focalLength——获得注视点对应深度核函数Bgra32ToSmoothCpp文件初始化变量:平滑函数Bgra32ToSmooth,注意f和deep都转化为指针类型,因为数据在显存读取:Bgra32ToSmooth((uint8_t *)ppFrame_Deep[i...

2020-04-15 10:16:07 443

原创 Nvidia Video Codec SDK——AppDecImageProvider动态模糊

Cpp文件初始化变量:平滑函数Bgra32ToSmooth,注意f和deep都转化为指针类型,因为数据在显存读取:Bgra32ToSmooth((uint8_t *)ppFrame_Deep[i],(uint8_t*)pTmpImage,(uint8_t*)sTmpImage, 4 * dec.GetWidth(), dec.GetWidth(), dec.GetHeight(), x_p...

2020-04-15 10:14:17 420

转载 人眼扫视——对模糊世界视而不见

    在日常生活中,人和许多动物的眼球频繁转动,以搜寻、注视、跟踪感兴趣的目标。通常情况下,人眼以每秒500度以上速度,将视线从视野中一点飞转到另一点,这种眼球快速运动叫做跳动或扫视。从物理学上讲,在眼球快速跳动的瞬间,所看物体的像飞快扫过视网膜表面,外界世界看起来应该是模糊一片。但我们并没有看到世界在摇曳不定,物体仍然清晰可辨。    家鸽是视觉研究中的鸟类代表,其视觉通路构成基本与哺乳动物...

2020-04-14 15:29:43 826

翻译 深度相关的模糊适应

研究表明,暴露于模糊图像几分钟的观察者倾向于将正常图像视为过于清晰,而暴露于清晰图像的观察者则将正常图像视为模糊。这一发现表明,我们对神经表示进行了调整,以使不同空间频率范围内的图像信息落入相同的有限动态范围内。换句话说,这些调整使我们的神经机制能够以大致不变的方式在不同空间尺度上改变对比度的分布。如果是这样,那么对图像模糊的适应可以被视为一种感知恒定性。...

2020-04-14 10:47:14 498

原创 VR产生眩晕感原因之一——景深

不适感产生原因    人类的视觉系统使用许多信息来推断景深和距离,包括调节(眼睛中晶状体的弯曲需要在视网膜上形成一个聚焦的图像)和倾斜(眼睛向内旋转需要形成一个单一的双目图像)。在立体显示中,这些信息并不匹配,这是因为用户在观察场景中不同深度的物体时,眼镜都聚焦在头显屏幕上,如下图所示:    当人们第一次用眼镜观察事物时,模拟器观察的条件与现实之间的不一致可以被认为与学习一种新的前庭反射所...

2020-04-13 20:15:56 1448

转载 图像处理——两次高斯模糊等效于一次高斯模糊

    在图像处理的过程中,用到对图像进行连续两次高斯模糊的操作。如果单独进行两次卷积则会造成额外的空间开辟造成资源的浪费,因此设想能否将两次高斯模糊等效于一次进行,这样不仅节省了资源而且提高了算法运行速度。    将两次高斯模糊等效于一次高斯模糊的理论依据是两个高斯函数的卷积仍为一高斯函数:先用高斯窗口为a的模板平滑,然后在用高斯窗口为b的模板平滑,效果等效于用窗口为c的模板平滑一次,其中c^...

2020-04-12 18:20:38 2112 1

原创 深度图像YUV值与场景实际深度值的换算

变量含义:公式:则有:代码:

2020-04-11 23:46:56 833

原创 Nvidia Video Codec SDK——AppDecode显存读取数值为0

    AppDecode采用硬解码的方式,使用GPU解码,解码出的数据在显存中,如果将数据传回内存再对数据进行索引会造成额外的负担,因此尝试直接对显存解码出的数据进行操作。核函数YuvToRgbKernel实现的是将GPU解码出的YUV数据转为RGB数据并存放在显存指针* pRgb中:运行后输出yuv数值全为0:其原因是因为在创建硬解码的过程中,第三个参数我们设置为了false:设...

2020-04-11 19:54:30 1045

转载 C++ std::move原理

左值、右值:左值、左值引用、右值、右值引用C++ 11 左值,右值,左值引用,右值引用,std::move, std::fowardstd::move:c++ 之 std::move 原理实现与用法总结...

2020-04-10 22:07:04 218

转载 C++ 多线程join()和detach()的理解

C++ 多线程join()和detach()的理解问题产生原因问题产生原因每一个程序至少拥有一个线程,那就是执行main()函数的主线程,而多线程则是出现两个或两个以上的线程并行运行,即主线程和子线程在同一时间段同时运行。而在这个过程中会出现几种情况:主线程先运行结束子线程先运行结束主子线程同时结束...

2020-04-10 18:31:26 6532 6

转载 对结构体中字符数组赋值时,出现表达式必须是可修改的左值的问题

对结构体中字符数组赋值时,出现表达式必须是可修改的左值的问题问题剖析解决方案用字符指针替代字符数组使用strcpy对结构体数组赋值使用string转载链接问题剖析在C++中为结构体中的字符数组赋值时,出现”表达式必须是可修改的左值“的错误提醒,编译报错“不可指定数据类型”:结构体定义:结构体中定义的数组:char inFile[256],使用 image.inFile="D:/…"是无...

2020-04-09 23:12:19 3026

转载 C++ deque类使用详解

C++ deque类使用详解定义基本操作详细链接定义    deque(双端队列)是由一段一段的定量连续空间构成,可以向两端发展,因此不论在尾部或头部安插元素都十分迅速。 在中间部分安插元素则比较费时,因为必须移动其它元素。使用之前必须加相应容器的头文件:#include <deque> // deque属于std命名域的,因此需要通过命名限定,例如using std::deq...

2020-04-09 20:18:16 1145

转载 C++ 头文件exception

exception标准库给我们提供了以下几个方面的异常处理支持:未捕获异常处理异常嵌套异常重抛详细信息参考:https://www.cnblogs.com/lgxZJ/p/6656390.html

2020-04-09 16:08:18 963

原创 cuda 线程块与线程

cuda 线程块与线程一维网格二维网格一维网格假设一个数组长度N为64,我们设置线程数TPB=32,则线程块数为N/TPB=2,核函数可写为:Kernel<<<N/TPB,TPB>>>()如果设置N=65,按照N/TPB我们仍然会得到2个包含32个线程的线程块,数组的最后一个输入没有被覆盖到,有一个简单的办法可以保证线程网格覆盖到整个数组程度,就是声明...

2020-04-08 22:44:00 1093

原创 cuda calling a __host__ function("sqrt<int> ") from a __device__ function(" ") is not allowed

添加头文件math.h,并将sqrt改为sqrtf

2020-04-08 19:00:11 1680

原创 Nvidia Video Codec SDK——AppDecImageProvider解析

Nvidia Video Codec SDK——AppDecImageProvider解析转换函数Nv12ToBgra32核函数YuvToRgbKernel对显存中任意位置像素进行索引AppDecImageProvider实现将解码后得到的YUV格式转成RGB格式。转换函数Nv12ToBgra32本文研究将Nv12格式转成Bgra32格式函数入口:Nv12ToBgra32()参数中,p...

2020-04-08 10:53:21 732

原创 C++ 指针强制类型转换

    C++中,任何一个变量都必须占有一个地址,不同的数据类型占有的空间大小不一,但是他们都必须有个地址,而这个地址就是硬件访问的依据,而名字只是提供给程序员的一种记住这个地址的方便一点的方法。如:int a;float b;double c;long double d;它们所占的字节分别是4、8、8、10,而且连续存储于某个地址空间。具体不同类型所占不同字节数请转:https:/...

2020-04-06 22:23:13 427

转载 C++ inline内联函数

    在 C/C++ 中,为了解决一些频繁调用的小函数大量消耗栈空间(栈内存)的问题,特别的引入了 inline 修饰符,表示为内联函数。栈空间就是指放置程序的局部数据(也就是函数内数据)的内存空间。在 C++ 中,可以在定义函数时,在返回值类型前面加上 inline 关键字。如:inline int Max (int a, int b){ if(a >b) ...

2020-04-06 16:34:54 98

转载 C++ union共用体的使用方法

C++ union共用体的使用方法定义互斥赋值sizeof( )转载链接定义union即为联合,它是一种特殊的类。通过关键字union进行定义,一个union可以有多个数据成员。例如:union Token{ char cval; int ival; double dval;};以上代码定义了一个名为Token的联合,该联合中包含了3个数据成员。互斥赋值在任意时刻...

2020-04-05 21:52:32 2331

转载 C++ template模板常见特性(函数模板、类模板)

「函数模板」的形式:template <class 类型参数1,class 类型参数2,...>返回值类型 模板名 (形参表){ 函数体};template 就是模板定义的关键词,T 代表的是任意变量的类型。定义Swap函数:template <class T>void Swap(T & x,T & y){ T tmp =...

2020-04-05 21:21:11 384

原创 CUDA未定义标识符"printf"

CUDA未定义标识符"printf":引用头文件stdio.h:#include <stdio.h>

2020-04-05 16:38:54 4433

转载 CUDA高性能并行计算学习笔记1----认识CUDA

CUDA高性能并行计算学习笔记1----认识CUDACUDA C基础函数类型限定符执行配置运算符五个内置变量变量类型限定符转载链接CUDA C基础CUDA C是对C/C++语言进行拓展后形成的变种,兼容C/C++语法,文件类型为”.cu”文件,编译器为”nvcc”,相比传统的C/C++,主要添加了以下几个方面:函数类型限定符执行配置运算符五个内置变量变量类型限定符其他的还有数学函数...

2020-04-05 15:26:11 380

原创 Nvidia Video Codec SDK——AppDec解析

Nvidia Video Codec SDK——AppDec解析项目框架AppDec硬解码整体框架主函数main具体硬解码流程函数DecodeMediaFile初始化解码器实际解码函数Decode回调函数HandlePictureDisplay数据指针参考链接项目框架使用的SDK版本是Video_Codec_SDK_8.2.16,下载链接:NVIDIA VIDEO CODEC SDK 8.2....

2020-04-03 17:04:55 7209 4

转载 C++ Vector容器的push_back( )与pop_back( )函数

C++ Vector容器的push_back()与pop_back()函数push_back( )pop_back( )参考链接push_back( )函数将一个新的元素加到vector的最后面,位置为当前最后一个元素的下一个元素push_back() 在Vector最后添加一个元素(参数为要插入的值)://在容器中添加10 int num = 10;vector<int&gt...

2020-04-02 15:40:26 30047

转载 C++ &、&&、 |、|| 、|=、?: 逻辑运算符用法

C++ &、&& |、|| 与|=逻辑运算符用法&与&&|与|||=参考链接&与&&&&    表示逻辑与的意思,即为and。当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。比如 12&&23的结果就是1,12&amp...

2020-04-02 10:58:35 86175

转载 C++函数默认参数(函数传入实参个数比形参个数少)

C++函数默认参数定义参数添加顺序注意事项转载链接定义    在C++中,定义函数时可以给形参指定一个默认的值,这样调用函数时如果没有给这个形参赋值(没有对应的实参),那么就使用这个默认的值。也就是说,调用函数时可以省略有默认值的参数。如果用户指定了参数的值,那么就使用用户指定的值,否则使用参数的默认值。所谓默认参数,指的是当函数调用中省略了实参时自动使用的一个值,这个值就是给形参指定的默认...

2020-04-02 10:35:31 10390 1

转载 C++ 互斥锁std::mutex的使用

    mutex(互斥量)是一个可以处于两态之一的变量:解锁和加锁。这样,只需要一个二进制位表示它,不过实际上,常常使用一个整型量,0表示解锁,而其他所有的值则表示加锁。互斥量使用两个过程。当一个线程(或进程)需要访问临界区时,它调用mutex_lock。如果该互斥量当前是解锁的(即临界区可用),此调用成功,调用线程可以自由进入该临界区。详细链接:C++11——std::mutex...

2020-04-01 21:28:24 564

转载 C++函数后面加“:”的含义

C++函数后面加“:”的含义在成员函数后面在构造函数后对父类进行初始化对类成员进行初始化对类的const成员变量进行初始化参考链接在成员函数后面c++成员函数后面跟“:”表示的是赋值,这是c++的特性:A( int aa, int bb ):a(aa),b(bb){}//相当于A( int aa, int bb ){a=aa;b=bb;}在构造函数后对父类进行初始化调...

2020-04-01 20:09:50 3848

转载 指向指针的指针(二级指针)理解

指向指针的指针(二级指针)理解在子函数中修改主函数传过来的指针的指向二维数组数和指针操作转载链接在子函数中修改主函数传过来的指针的指向#include<stdio.h>void F1(int *pp){ pp++; *pp = 9;} void F2(int **pp){ (*pp)++;}//以上函数中,接收数据的参量都是pp,而不会是*pp或者**pp ...

2020-04-01 19:17:42 224

转载 为什么C语言处理图像用的是unsigned char类型

signed char(平时通常写作char):有符号字符类型,1个字节,数值范围-128到127。unsigned char:无符号字符类型,1个字节,数值范围0到255。通常我们使用的缓存还有字符处理一般使用char型,unsigned char 在处理图像时会用到,因为一个像素点是RGB(不考虑RGBA的情形),这里的R、G、B分量的范围都是0到255,所以使用unsigned char...

2020-04-01 16:35:35 1304 1

Draw.unitypackage

在Unity中画出全景视频观看示意图 详见链接:https://editor.csdn.net/md?not_checkout=1&articleId=108401041

2020-09-04

SocketImpl.cpp

解决Win 10 SDK 10.0.19041.0与Unity2019.3.15f的Socket之间存在不适配的问题 解决方案链接:https://editor.csdn.net/md?articleId=107735396

2020-08-01

Uninstaller.rar

删除Visual Studio卸载剩余残留项

2020-04-16

NVIDIA VIDEO CODEC SDK 8.2.16.zip

环境要求: * Windows: Driver version 397.93 or higher * Linux: Driver version 396.24 or higher * CUDA 8.0 Toolkit

2020-03-26

空空如也

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

TA关注的人

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