資源簡介
VSRS采用兩個參考視圖和兩個深度圖作為輸入來生成合成的虛擬視圖。所需的內在和外在相機參數和支持一維平行和非平行相機設置。前期主要有兩種模式:1-D Mode和General Mode,其中1-D Mode支持的是平行移動的場景,而General Mode支持的更為通用的場景,二者都是針對的普通平面視頻進行的虛擬視點合成。后期,VSRS也支持了ERP格式的全景視頻格式的輸入。
代碼片段和文件信息
//======================================created?by?Ying?Chen?=====================================
//===============Tampere?University?of?Technology?(TUT)/Nokia?Research?Center?(NRC)===============
#ifdef?WIN32
#pragma?warning(disable?:?4996)
#endif
#include?“Parameterbase.h“
#include??
#ifndef?MSYS_WIN32
#define?stricmp?strcasecmp
#endif
#define?equal(ab)??(!stricmp((a)(b)))
//using?namespace?std;
ConfigLineStr::ConfigLineStr(?Char*?pcTag?std::string*?pcPar?Char*?pcDefault?)?:?ConfigLinebase(?pcTag?1?)?m_pcPar(?pcPar?)
{
??*m_pcPar?=?pcDefault;
}
Void
ConfigLineStr::setVar(?std::string&?pvValue?)
{
??*m_pcPar?=?pvValue;
}
Void
ConfigLineStr::fprintVar(?FILE?*fp?)
{
??fprintf(fp?“%s?:?%s\n“?m_cTag.c_str()?m_pcPar->c_str());
}
ConfigLineDbl::ConfigLineDbl(?Char*?pcTag?Double*?pdPar?Double?pdDefault?)?:??ConfigLinebase(?pcTag?2?)?m_pdPar(?pdPar?)
{
??*m_pdPar?=?pdDefault;
}
Void
ConfigLineDbl::setVar(?std::string&?pvValue?)
{
??*m_pdPar?=?atof(?pvValue.c_str()?);
}
Void
ConfigLineDbl::fprintVar(?FILE?*fp?)
{
??fprintf(fp?“%s?:?%f\n“?m_cTag.c_str()?*m_pdPar);
}
ConfigLineInt::ConfigLineInt(?Char*?pcTag?Int*?piPar?Int?piDefault?)?:?ConfigLinebase(?pcTag?3?)?m_piPar(?piPar?)
{
??*m_piPar?=?piDefault;
}
Void
ConfigLineInt::setVar(?std::string&?pvValue)
{
??*m_piPar?=?atoi(?pvValue.c_str()?);
}
Void
ConfigLineInt::fprintVar(?FILE?*fp?)
{
??fprintf(fp?“%s?:?%d\n“?m_cTag.c_str()?*m_piPar);
}
ConfigLineUInt::ConfigLineUInt(?Char*?pcTag?UInt*?puiPar?UInt?puiDefault?)?:?ConfigLinebase(?pcTag?4?)?m_puiPar(?puiPar?)
{
??*m_puiPar?=?puiDefault;
}
Void
ConfigLineUInt::setVar(?std::string&?pvValue)
{
??*m_puiPar?=?atoi(?pvValue.c_str()?);
}
Void
ConfigLineUInt::fprintVar(?FILE?*fp?)
{
??fprintf(fp?“%s?:?%d\n“?m_cTag.c_str()?*m_puiPar);
}
ConfigLineChar::ConfigLineChar(?Char*?pcTag?Char*?pcPar?Char?pcDefault?)?:?ConfigLinebase(?pcTag?5?)?m_pcPar(?pcPar?)
{
??*m_pcPar?=?pcDefault;
}
Void
ConfigLineChar::setVar(?std::string&?pvValue?)
{
??*m_pcPar?=?(Char)atoi(?pvValue.c_str()?);
}
Void
ConfigLineChar::fprintVar(?FILE?*fp?)
{
??fprintf(fp?“%s?:?%c\n“?m_cTag.c_str()?*m_pcPar);
}
Parameterbase::Parameterbase()
{
??for?(int?i?=?0;?i?????m_pCfgLines[i]?=?NULL;
}
Void
Parameterbase::release()
{
??UInt?uiParLnCount?=?0;
??while?(m_pCfgLines[uiParLnCount]?!=?NULL)
??{
????delete?m_pCfgLines[uiParLnCount];
????m_pCfgLines[uiParLnCount]?=?NULL;
????uiParLnCount++;
??}
}
Void
Parameterbase::xPrintParam()
{
??UInt?uiParLnCount?=?0;
??while?(m_pCfgLines[uiParLnCount]?!=?NULL)
??{
????m_pCfgLines[uiParLnCount]->fprintVar(stdout);
????uiParLnCount++;
??}
}
Int
Parameterbase::xReadFromFile(?std::string&?rcFilename?)
{
??std::string?acTags[4];
??UInt????????uiParLnCount?=?0;
??UInt????????uilayerCnt???=?0;
??FILE?*f?=?fopen(?rcFilename.c_str
- 上一篇:有限元方法編程及fortran程序__第三版
- 下一篇:LPC1768開發板例程
評論
共有 條評論