当前位置: 首页 > news >正文

RenderToolbox的学习笔记(一)

RenderToolbox是由宾夕法尼亚大学(University of Pennsylvania)的David Brainard, brainard@psych.upenn.edu; Chris Broussard, chrg@sas.upenn.edu开发的一个基于RadiancePBRT引擎的Matlab工具箱。http://www.rendertoolbox.org/wikka.php?wakka=HomePage

目前RenderToolBox提供了MacOS/XLinux的安装版本。我们这里只讲下在Ubuntu下的安装。

安装该软件包之前需要安装RadianceOpenEXRPBRTMATLABSubversion命令,Psychtoolbox

1)安装Matlab

http://blog.csdn.net/lqhbupt/article/details/7853440

2)安装Radiance

sudo apt-get install radiance

3)安装OpenEXR

http://blog.csdn.net/lqhbupt/article/details/7854442

4)安装LibTIFF

在官网http://www.libtiff.org/下载文件tiff-3.8.2.tar.gz

sudo tar -zxvf tiff-3.8.2.tar.gz -C /usr/local/

cd /usr/local/ tiff-3.8.2

sudo ./configure

sudo make

sudo make install

5)安装Psychtoolbox-3

http://neuro.debian.net/

选择相应的Ubuntu版本和镜像后,得到下载NeuroDebian软件库的命令

wget -O- http://neuro.debian.net/lists/precise.jp | sudo tee/etc/apt/sources.list.d/neurodebian.sources.list

sudo apt-key adv --recv-keys --keyserver pgp.mit.edu 2649A5A9


sudo apt-get update

sudo apt-get install mricron

sudo apt-get install octave-psychtoolbox-3

Matlab进入/usr/share/psychtoolbox-3目录

终端命令行输入

sudo chmod a+w -R /usr/local/MATLAB/R2012a/toolbox

Matlab命令窗口输入:

SetupPsychtoolbox

根据提示,在终端安装缺少的软件。

6)安装SVN命令

sudo apt-get install subversion

7)安装RenderToolboxSimToolbox

sudo mkdir /usr/share/RenderToolbox

sudo mkdir /usr/share/SimToolbox

sudo svn co https://platypus.psych.upenn.edu/repos/rendertoolbox/trunk /usr/share/RenderToolbox

sudo svn co https://platypus.psych.upenn.edu/repos/simtoolbox/trunk /usr/share/SimToolbox


RenderToolbox_2.0SimToolbox加入MATLAB路径

打开Matlab,在命令窗口输入:

>>addpath(genpath('/usr/share/RenderToolbox/RenderToolbox_2.0'));

>>addpath(genpath('/usr/share/SimToolbox'));

>>path(RemoveSVNPaths)


编译安装PBRT_batchRender

打开终端,输入:

cd /usr/share/RenderToolbox/PBRT_batchRender_1.1

sudo make clean

sudo make


PBRT_batchRender_1.1/bin加入系统环境变量

打开~/.bashrc文件加入如下两行:

export PBRT_SEARCHPATH=”/usr/share/RenderToolbox/PBRT_batchRender_1.1/bin”

export PATH=${PATH}:${PBRT_SEARCHPATH}


编译安装PBRT_original

cd /usr/share/RenderToolbox//PBRT_original

sudo make clean

sudo make


打开PBRT_original目录下的pbrt_org文件,将第一行和最后一行更改为用户的目录。

第一行:

PBRT_SEARCHPATH="/usr/share/RenderToolbox/PBRT_original/bin"

最后一行:

/usr/share/RenderToolbox/PBRT_original/bin/pbrt$*

cd /usr/local/bin

sudo ln -s /usr/share/RenderToolbox/PBRT_original/pbrt_orig .

cd /usr/share/RenderToolbox/Utilities/exrtofloat

sudo make clean

sudo make

cd /usr/local/bin

sudo ln -s /usr/share/RenderToolbox/Utilities/exrtofloat/exrtofloat .


测试RenderToolbox是否安装成功

Matlab命令窗口

>>cd /usr/share/RenderToolbox/examples/table_sphere

>>unix('./clean.sh');

>>Render_BatchRender
如果一切配置成功,则会在当前文件夹下创建monitor_image_data子文件夹,其中保存分别用RadiancePBRT渲染出来的图片。


遇到问题及解决方案:

1core/paramset.h:100:error: extra qualification ‘ParamSet::’ on member ‘ParamSet’

解决方法:在core/paramset.h中,将"ParamSet::~ParamSet()"替换为"~ParamSet()".

film/image_raw.cpp:22:error: extra qualification ‘ImageFilm::’ on member ‘ImageFilm’

解决方法:ImageFilm::ImageFilm(intxres, int yres,前面的ImageFilm::去掉

shapes/sphere.cpp:25:error: extra qualification ‘Sphere::’ on member ‘Sample’

shapes/sphere.cpp:32:error: extra qualification ‘Sphere::’ on member ‘Sample’

shapes/sphere.cpp:59:error: extra qualification ‘Sphere::’ on member ‘Pdf’

解决方法:将对应行的Sphere::去掉

accelerators/kdtree.cpp:98:error: extra qualification ‘KdTreeAccel::’ on member‘KdTreeAccel’

解决方法:将对应行的KdTreeAccel::去掉

2Lex'ingpbrtlex.l

core/pbrtlex.l:82:bad character:

core/pbrtlex.l:82:name defined twice

core/pbrtlex.l:88:bad character class

core/pbrtlex.l:88:unrecognized rule

core/pbrtlex.l:88:unrecognized rule

core/pbrtlex.l:88:unrecognized rule

core/pbrtlex.l:88:unrecognized rule

core/pbrtlex.l:88:unrecognized rule

core/pbrtlex.l:132:bad character class

core/pbrtlex.l:132:unrecognized rule

解决方法:在core/pbrtlex.l文件中,将第82行修改为

WHITESPACE[ \t\j]+

3Linkingbin/pbrt

/usr/local/lib/libIlmThread.so:undefined reference to `sem_init'

解决方法:打开Makefile文件,在EXRLIBS=-lIlmImf-lImath -lIex -lHalf -lz

行后添加-lpthread

4convert.cpp:12:fatal error: ImfRgbaFile.h: No such file or directory

解决方法:打开Makefile文件,将

INCLUDE=/opt/local/include/OpenEXR

LIBDIR=/opt/local/lib

更改为

INCLUDE=/usr/local/include/OpenEXR

LIBDIR=/usr/local/lib


相关文章:

  • Ubuntu 12.04下安装Dropbox
  • Windows下在Matlab中读写OpenEXR格式的图片
  • Windows下编译安装PBRT V1.05
  • Ubuntu系统监测工具
  • Ubuntu 12.04下安装OpenCV 2.4.2
  • 【OpenEXR】HDRITools的使用
  • Linux下的Make与Makefile
  • Ubuntu下进行Android开发的相关配置
  • 如何阅读不同格式的Ubuntu/Linux帮助文档
  • Ubuntu 中其他编程语言的使用
  • Ubuntu中如何修复GRUB2 Boot Loader
  • Ubuntu下的虚拟化KVM
  • 使用MeTriX MuX 1.1
  • 使用Endnote进行文献管理
  • GOOGLE学术检索技巧
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • Codepen 每日精选(2018-3-25)
  • EOS是什么
  • Java 多线程编程之:notify 和 wait 用法
  • Making An Indicator With Pure CSS
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 分布式任务队列Celery
  • 前端代码风格自动化系列(二)之Commitlint
  • 一个完整Java Web项目背后的密码
  • 一些css基础学习笔记
  • 怎样选择前端框架
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • ###C语言程序设计-----C语言学习(6)#
  • #pragma once
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (2024,LoRA,全量微调,低秩,强正则化,缓解遗忘,多样性)LoRA 学习更少,遗忘更少
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (Redis使用系列) Springboot 使用Redis+Session实现Session共享 ,简单的单点登录 五
  • (第30天)二叉树阶段总结
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (离散数学)逻辑连接词
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • ./configure,make,make install的作用
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .NET的微型Web框架 Nancy
  • .net开发引用程序集提示没有强名称的解决办法
  • :中兴通讯为何成功
  • @NoArgsConstructor和@AllArgsConstructor,@Builder
  • @RequestMapping 的作用是什么?
  • [ 云计算 | Azure 实践 ] 在 Azure 门户中创建 VM 虚拟机并进行验证
  • [Android] Implementation vs API dependency