基于linux下的krpano的使用
鉴于目前网络上关于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的使用的更多相关文章
- 基于Linux下catalog方式的 Oracle 备份策略(RMAN)
--********************************** -- 基于Linux下 Oracle 备份策略(RMAN) --******************************* ...
- 基于Linux下Iptables限制BT下载的研究
基于Linux下Iptables限制BT下载的研究 摘要: 当前BT下载技术和软件飞速发展,给人们网上冲浪获取资源带来了极大的便利, 但同时BT占用大量的网络带宽等资源也给网络和网络管理员 ...
- 基于linux下的NIST数字测试包安装过程
基于linux下的NIST数字测试包安装过程 1. 首先解决windows文件不能粘贴到Ubuntu的问题 选择利用VMware Tools进行解决 打开虚拟机VMware Workstation,启 ...
- 【转】基于Linux下的TCP编程
http://blog.csdn.net/tigerjibo/article/details/6775534 一.Linux下TCP编程框架 TCP网络编程的流程包含服务器和客户端两种模式.服务器模式 ...
- 基于Linux下的UDP编程
一. Linux下UDP编程框架 使用UDP进行程序设计可以分为客户端和服务器端两部分. 1.服务器端程序包括: Ø 建立套接字 Ø 将套接字地址结构进行绑定 Ø 读写数据 Ø 关闭套接字 2 ...
- 【转】基于linux下的dm9000网卡移植全分析
转自:http://blog.sina.com.cn/s/blog_6abf2c04010189ui.html DM9000可以直接与ISA总线相连,也可以与大多数CPU直接相连.Mini2440采用 ...
- 【转】基于linux下的变量声明declare的用法
转自:http://techcurtman.iteye.com/blog/1249512 declare 功能介绍:声明变量的属性,如果使用declare,后面没有任何参数,那么bash就会主动将所有 ...
- 基于LINUX下的进程管理问题
什么是进程? 程序(program)放置在存储媒体中(如硬盘,光盘,软盘,磁带等)为实体文件的形态存在 进程:程序被触发后,执行者的权限与属性,程序的程序码与所需数据等都会被载入内存中,操作系统并给予 ...
- 基于Linux下的C语言项目实战--本地账号管理系统
C语言开发项目实战: C语言是一门通用计算机编程语言,广泛应用于底层开发.C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言.尽 ...
随机推荐
- 使用Visual Studio Team Services敏捷规划和项目组合管理(一)——使用团队、区域和迭代
使用Visual Studio Team Services敏捷规划和项目组合管理(一)--使用团队.区域和迭代 概述 在本实验,你将会了解Visual Studio Team Services提供的敏 ...
- 关于wordpress慢的问题
随笔记载: 关于wordpress访问慢的原因,主要是wordpress采用了google前端库, 需替换wordpress/wp-includes/script-header.php中所有的goog ...
- PostgreSQL分页
转自 https://blog.csdn.net/tomcat_2014/article/details/49947711 如果用过mysql,那么对 select * from xxx limit ...
- mysql表分区简述
一. 简介 数据库分区 数据库分区是一种物理数据库设计技术.虽然分区技术可以实现很多效果,但其主要目的是为了在特定的SQL操作中减少数据读写的总量以缩减sql语句的响应时间,同时对于应用来说分区完全是 ...
- memset memcmp memcpy memmove 自己实现
memset memcmp memcpy memmove 自己实现 memset #include <stdio.h> #include <memory.h> #include ...
- Java(Java SE7) 体系结构图
原文:https://docs.oracle.com/javase/7/docs/
- 3d max 动作Take 001改名
问题描述 带动作的Fbx文件导入Unity之后,动作名字为Take 001,如下所示: 在max那边是没有办法改名的,只能在Unity中改名. 方法1 1. 选中动画文件,按Ctrl + D,复制一份 ...
- Spring的通知类型,切入表达式写法
转载自 https://www.cnblogs.com/ltfxy/p/9882697.html Spring中通知类型: 前置通知:目标方法执行之前进行操作,可以获得切入点信息 后置通知: 目标方 ...
- kafka-connect-hdfs重启,进去RECOVERY状态,从hadoop hdfs拿租约,很正常,但是也太久了吧
虽说这个算是正常现象,等的时间也太久了吧.分钟级了.这个RECOVERY里面的WAL有点多余.有这么久的时间,早从新读取kafka写入hdfs了.纯属个人见解. @SuppressWarnings(& ...
- 【JXOI2018】守卫
[JXOI2018]守卫 参考题解:https://blog.csdn.net/dofypxy/article/details/80196942 大致思路就是:区间DP.对于\([l,r]\)的答案, ...