写给Krpano小白们的最最最入门级教程(一)
来源:互联网 发布:高管都用什么手机 数据 编辑:程序博客网 时间:2024/05/22 08:25
本教程案例使用krpano 1.16.9制作,与最新版本有一定区别,但不影响学习和使用。
教程的第一部分主要是教大家如何使用Krpano并对标题做简单修改。
这篇文章不是教你如何拍摄、拼接全景照片,如果你仅仅是全景爱好者,那我想得图云提供的后台完全能够满足你,因此,对全景漫游有商业需求,一定要给客户提供HTML5网页格式文件或者SWF文件的朋友,这篇文章能够引导你一步步的制作出第一个属于你自己的全景漫游网页文件。
首先让我们看看Krpano是什么样的,打开Krpano的文件夹(图1)。
图1
一般人会想要先找应用程序,但是Krpano并不是传统意义上的软件,它没有图形界面也没有可以双击打开的exe文件(加密保护文件除外),那我们怎么用它来制作全景漫游?!仔细看,你会发现文件夹里有许多Make ........ droplet命名的批处理文件(.bat),这些批处理文件其实就是最常用的Krpano工具(图2)。
图2
让我们来看一下文件名MAKE OBJECT droplet;MAKE PANO (FLAT、MULTIRES、NORMAL、SINGLE-SWF) droplet;MAKE VTOUR (MULTIRES、NORMAL) droplet,从字面意思看不难理解(当然英语不好的同学可以多利用百度翻译),MAKE OBJECT droplet指的是生成物体全景。请注意,是一件物体的全景,而不是我们平常意义的标准全景或漫游,对环物全景有兴趣的同学可以试验一下。PANO指的是标准全景,VTOUR自然就是全景漫游了,MULTIRES指的是渐进分辨率,没有尺寸及像素限制、NORMAL指的是生成尺寸最大为2200的标准全景图,MULTIRES和NORMAL最大的区别在于NORMAL有分辨率限制但是可以一次性载入,而MULTIRES不限制分辨率,载入时是分层渐进的,网络带宽有限的情况下非常适用。SINGLE-SWF会生成一个最大分辨率为2200的Flash文件(请注意是一个文件,不是一个文件夹)(图3)。
图3
FLAT可以生成一个多层渐进的2D全景图片,不限制分辨率,适用于矩阵拼接的大型图片。这里仅对我们今后所使用的工具做一个简要介绍,本文的案例所要用到的是MAKE VTOUR (MULTIRES) droplet,制作多层渐进分辨率的全景漫游(图4)
图4
接下来让我们开始制作全景漫游,不过,在我们制作全景漫游之前还有一个步骤,修改文件名。说到这个就不得不说一下关于CMD命令提示符这个东西,也许很多朋友对CMD命令提示符比较陌生,你可以把它理解为运行在windows系统下的DOS操作系统,批处理文件(.bat)正是以指令的形式在CMD下运行的一种特殊的程序,而CMD命令提示符本身对指令的长度是有限制的,这个限制在XP或更高版本系统系统下运行时是 8191 个字符,不要认为这个长度你就可以为所欲为了,事实证明,当你的照片几乎都是中文命名并且藏在n个文件夹之后时,你是不可能完成一个20张图片的全景漫游的。因为当你从“X:\我的照片\全景照片\xxxxx公园”拖动3张照片到MAKE VTOUR (MULTIRES) droplet上面时,Krpano调用的命令是x:\krpano\krpanotools64.exe makepano -config=templates\vtour-multires.config x:\我的照片\全景照片\xxxxx公园\image1.jpg x:\我的照片\全景照片\xxxxx公园\image2.jpg x:\我的照片\全景照片\xxxxx公园\image3.jpg 一旦超出长度限制,系统就会跳过或忽略,从而导致命令中断。(详见《Krpano课堂:K经验(5)- 解决MAKE VTOUR可生成场景数的限制》)
之前有同学认为这个是Krpano对于生成漫游的场景数量限制,事实上Krpano本身对这方面是没有任何限制的,唯一的限制就是CMD调用命令提示符时所生成的命令长度。解决这个问题很简单(当然方法不止一种,这里我只说一个最简单的,毕竟不是每个人都有耐心去输入一长串指令),全选你需要扔进droplet的图片(最好保证它们都在一个文件夹里)点击鼠标右键选择重命名,随便输入一个最最最简单的字符,比如a,你会得到a(1~23)命名的23张图片(图5)。
- [转]写给Krpano小白们的最最最入门级教程(一)
- 写给Krpano小白们的最最最入门级教程(一)
- [转]写给Krpano小白们的最最最入门级教程(二)
- [转]写给Krpano小白们的最最最入门级教程(三)
- 给Krpano小白们的最最最入门级教程(二)
- 最最最简单的C#入门!!!(一)工欲善其事,必先利其器!
- krpano快速入门(一)
- 史上最最最简单的MVP教程
- 浅谈安卓自定义view(一):制作一个最最最简单的自定义view
- Android RecyclerView 详解(一)最最最基本使用
- 地图入门(一):Android上使用Google Maps加标注的最最简单的例子
- 我是如何学习一门开发语言(适合最最菜的鸟,入门参考阅读)
- 我是如何学习一门开发语言(适合最最菜的鸟,入门参考阅读)
- 单机架设最最最简单教程!
- 教程准备篇1:最最最基础的前端知识(1个月熟悉并了解)
- 最最最简单的分页
- 最最最黑暗的一天
- 最最最简单的计算器
- leetcode题解-483. Smallest Good Base
- 《设计模式之禅》第二版 学习之六大设计原则(一)
- 进程学习:进程间通信(基础知识篇)
- Android support.v7库包含控件解析
- 关于elasticsearch的几个QueryBuilder
- 写给Krpano小白们的最最最入门级教程(一)
- Java8 Stream的分组,分区
- Jzoj5440 【NOIP2017提高A组冲刺11.1】背包
- 应怎样看待 target="_blank" 的使用?
- 数据结构实验之二叉树七:叶子问题
- 在TTF字体中提取指定文字
- SharedPreferences基本操作
- 数据库-关于丢失更新和乐观锁的那些故事
- HDU 2041 超级楼梯