鉴于目前网络上关于krpano的使用和介绍少之又少,结合自己的学习和使用经历,做个总结和记录。

1.安装

下载地址:

linux

https://krpano.com/forum/wbb/index.php?page=Thread&threadID=15064

windows: 可自行百度,这块网上的资源比较多,建议下载,有些配置文件在linux里可以直接拿来用,作为学习入门还是不错的

直接下载即可

2.注册

下载完成后进入下载目录。如果没有通过注册,生成的图片是带有水印的,注册的命令是./krpanotools register ###  #处填写注册码。

3.生成全景图的命令

./krpanotools makepano -config=配置文件目录 filepath

4.配置文件

basicsettings.config

# Basic Settings
# Documentation: http://krpano.com/tools/kmakemultires/config?version=119
# krpano 1.19 # image filtering and compression settings
filter=LANCZOS
jpegquality=
jpegsubsamp=
jpegoptimize=true # load gps exif information from the input files and transfer them to the xml
parsegps=true # parse the input files for orientation / leveling information and either
# directly remap the images or add a prealign setting in the xml to level them
autolevel=remap # sort the input files alphabetically
sortinput=true # protection settings (nomb = no Flashplayer menubar for standalone swf)
kprotectclparameters=-nomb

normal.config

# Normal/Single-Resolution Panos
# Skin with Default Buttons
# Documentation: http://krpano.com/tools/kmakemultires/config?version=119
# krpano 1.19 # basic settings
include basicsettings.config
panotype=autodetect
hfov= # output
flash=true
html5=true # convert spherical/cylindrical to cubical
converttocube=true
converttocubelimit=360x45 # multiresolution settings
multires=false
maxsize=
maxcubesize= # output images path
tilepath=%INPUTPATH%/%BASENAME%/%BASENAME%.tiles/pano[_c].jpg # preview pano settings
preview=true
graypreview=false
previewsmooth=
previewpath=%INPUTPATH%/%BASENAME%/%BASENAME%.tiles/preview.jpg # generate smaller mobile images
#customimage[mobile].size=
#customimage[mobile].path=%INPUTPATH%/%BASENAME%/%BASENAME%.tiles/mobile_%s.jpg
#customimage[mobile].imagesettings=jpegquality= jpegsubsamp= jpegoptimize=true
#customimage[mobile].xml=<mobile>[NL][TAB]<cube url="[PATH]" />[NL]</mobile> # xml output
xml=true
xmlpath=%INPUTPATH%/%BASENAME%/pano.xml # skin / xml template
include defaultbuttons.skin # html output/template
html=true
htmlpath=%INPUTPATH%/%BASENAME%/index.html
htmltemplate=html/embedpano.html # include testing servers
htmltemplate_additional_file=html/tour_testingserver.exe
htmltemplate_additional_file=html/tour_testingserver_macos+x

基本上可以满足大多数需求,也可以通过windows安装包自带的一些配置。官网文档

使用过程中遇到的一些问题:

1.前期处理较小的图片文件没什么问题,当处理的图片文件较大时,脚本容易出现假死的情况,此时如果用到是node的exe或者shelljs 时,衍生shell时应该增加maxBuffer 配置。

2.前期使用了基于redis的订阅发布模式获取数据,只能一个进程处理,效率比较低,后来采用了redis队列的方式,使用PM2管理node进程,效率明显升高。

3.类似图形处理的程序对cpu的要求比较高,使用的时候应该注意。

基于linux下的krpano的使用的更多相关文章

  1. 基于Linux下catalog方式的 Oracle 备份策略(RMAN)

    --********************************** -- 基于Linux下 Oracle 备份策略(RMAN) --******************************* ...

  2. 基于Linux下Iptables限制BT下载的研究

    基于Linux下Iptables限制BT下载的研究   摘要:     当前BT下载技术和软件飞速发展,给人们网上冲浪获取资源带来了极大的便利, 但同时BT占用大量的网络带宽等资源也给网络和网络管理员 ...

  3. 基于linux下的NIST数字测试包安装过程

    基于linux下的NIST数字测试包安装过程 1. 首先解决windows文件不能粘贴到Ubuntu的问题 选择利用VMware Tools进行解决 打开虚拟机VMware Workstation,启 ...

  4. 【转】基于Linux下的TCP编程

    http://blog.csdn.net/tigerjibo/article/details/6775534 一.Linux下TCP编程框架 TCP网络编程的流程包含服务器和客户端两种模式.服务器模式 ...

  5. 基于Linux下的UDP编程

    一. Linux下UDP编程框架 使用UDP进行程序设计可以分为客户端和服务器端两部分. 1.服务器端程序包括: Ø  建立套接字 Ø  将套接字地址结构进行绑定 Ø  读写数据 Ø  关闭套接字 2 ...

  6. 【转】基于linux下的dm9000网卡移植全分析

    转自:http://blog.sina.com.cn/s/blog_6abf2c04010189ui.html DM9000可以直接与ISA总线相连,也可以与大多数CPU直接相连.Mini2440采用 ...

  7. 【转】基于linux下的变量声明declare的用法

    转自:http://techcurtman.iteye.com/blog/1249512 declare 功能介绍:声明变量的属性,如果使用declare,后面没有任何参数,那么bash就会主动将所有 ...

  8. 基于LINUX下的进程管理问题

    什么是进程? 程序(program)放置在存储媒体中(如硬盘,光盘,软盘,磁带等)为实体文件的形态存在 进程:程序被触发后,执行者的权限与属性,程序的程序码与所需数据等都会被载入内存中,操作系统并给予 ...

  9. 基于Linux下的C语言项目实战--本地账号管理系统

    C语言开发项目实战: C语言是一门通用计算机编程语言,广泛应用于底层开发.C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言.尽 ...

随机推荐

  1. EOS与以太坊有哪些区别?

    以太坊是一个专门为开发和运行去中心化应用(DAPP)搭建的智能合约平台:EOS与以太坊类似,同样是基于智能合约和区块链而搭建.但是,从技术和设计理念等方面来看,这两者之间实际上存在明显的区别. 那么E ...

  2. 批量配置SSH互信脚本

    在大规模自动化部署时我们常常需要配置好服务器的SSH互信,以便自动化脚本可以免密登录远程服务器,常规的手动配置SSH互信步骤如下: 使用ssh-keygen生成本地ssh key(mha01),生成的 ...

  3. Echars鼠标点击事件多次触发

    gChart.on('click', function (params) { if (params.componentSubType == "bar" && par ...

  4. [Hive_6] Hive 的内置函数应用

    0. 说明 Hive 的内置函数的基本操作 | 时间函数 | String 函数 | 条件语句 | explode | split | substring 1. 基本操作 查看函数 show func ...

  5. 两数之和,两数相加(leetcode)

    我们都知道算法是程序员成长重要的一环,怎么才能提高算法呢, 出来在网上看视频之外,动手练习是非常重要的.leetcode 就是一个非常好的锻炼平台. 1. 两数之和,在 leetcode 里面是属于 ...

  6. jenkins 构建到最后报权限的问题

    参考链接  https://blog.csdn.net/sinat_25306771/article/details/54633921 近整理虚拟机的密码  把Jenkins构建相关的远程执行脚本的服 ...

  7. 终极 Shell——ZSH

    Shell是Linux/Unix的一个外壳,你理解成衣服也行.它负责外界与Linux内核的交互,接收用户或其他应用程序的命令,然后把这些命令转化成内核能理解的语言,传给内核,内核是真正干活的,干完之后 ...

  8. Linux 小知识翻译 - 「虚拟化技术 续」

    这次,继续聊聊「虚拟化技术」. 根据上回的介绍,虚拟化技术可以使「计算机的台数和运行的OS的个数的比例不再是1:1」.这回介绍一下如何使用这个技术. 使用方法之一,「一台计算机上运行多个OS」.从个人 ...

  9. 文件下载中使用inputStream流获取文件大小

    inputStream.available()获取的是文件的字节大小 InputStream inputStream = new FileInputStream(new File(path)); re ...

  10. 谱聚类算法(Spectral Clustering)优化与扩展

    谱聚类(Spectral Clustering, SC)在前面的博文中已经详述,是一种基于图论的聚类方法,简单形象且理论基础充分,在社交网络中广泛应用.本文将讲述进一步扩展其应用场景:首先是User- ...