Giter Club home page Giter Club logo

panoramix's People

Contributors

yang-h avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

panoramix's Issues

question about rendering 3d model

Hi,
I cant understand the procedure of rendering 3d model. And I have some questions.
1.
The VisualizeReconstructionCompact function takes the zoomed panorama as texture and pass it to the glsl
gui::ResourceStore::set("texture", reversedIm);
I'd like to know where the texture is stored in the PredefinedShaderSource function of shader.cpp.

The compactPolygons vector in VisualizeReconstructionCompact contains the vertex and plane information to reconstruct the 3D model.
And the XPanorama as self-defined shader,
viz.begin(compactPolygons /, sppCallbackFun/)
.shaderSource(gui::OpenGLShaderSourceDescriptor::XPanorama)
.resource("texture")
.end();
However, I cant find the correspondence between cpu variables and glsl variables.
E.g.
In the array
static const std::pair<std::string, std::string> xPanoramaShaderSource
what is viewMatrix ,modelMatrix and projectionMatrix?
What's the meaning of gl_Position in the main function?

Can you make brief description about the way to assemble or integrate the geometry data (obj file) with texture data ( zoomed panorama images) in glsl manner?

ERROR: 0:6: 'isSelected' : syntax error

Hi,
I have trouble of showgui during executing the function 'RunPanoramaReconstruction'.
I have installed everything as you told.
The error is as followed:

Have -858993460 buffers and -858993460 samples
QOpenGLShader::compile(Vertex): ERROR: 0:1: '130' : version number not supported

ERROR: 0:6: 'isSelected' : syntax error

*** Problematic Vertex shader source code ***
#version 130
#line 2
attribute highp vec3 position;
attribute highp vec3 normal;
attribute highp vec4 color;
attribute lowp vec2 texCoord;
attribute uint isSelected;
uniform highp mat4 viewMatrix;
uniform highp mat4 modelMatrix;
uniform highp mat4 projectionMatrix;
varying highp vec3 pixelPosition;
varying highp vec3 pixelNormal;
varying highp vec4 pixelColor;
varying lowp float pixelSelection;
void main(void)
{
pixelPosition = position.xyz;
pixelNormal = normal;
pixelColor = color;
gl_Position = projectionMatrix * viewMatrix * modelMatrix * vec4(position, 1
.0);
pixelSelection = isSelected == 0u ? 0.0 : 1.0;
}


"ERROR: 0:1: '130' : version number not supported\nERROR: 0:6: 'isSelected' : sy
ntax error \n"
QOpenGLShader::compile(Fragment): ERROR: 0:1: '130' : version number not support
ed

*** Problematic Fragment shader source code ***
#version 130
#line 2
uniform sampler2D tex;
uniform lowp float bwColor;
uniform lowp float bwTexColor;
uniform highp vec3 panoramaCenter;
uniform highp float panoramaHoriCenterRatio;
uniform highp float panoramaAspectRatio;
varying highp vec3 pixelPosition;
varying highp vec3 pixelNormal;
varying highp vec4 pixelColor;
varying lowp float pixelSelection;
void main(void)
{
highp vec3 direction = pixelPosition - panoramaCenter;
highp float longi = atan(direction.y, direction.x);
highp float lati = asin(direction.z / length(direction));
highp float globalx = longi / 3.1415926535897932 / 2.0 + 0.5;
highp float globaly = - lati / 3.1415926535897932 + 0.5;
highp float texx = globalx;
highp float texy = (globaly / 2.0 - (0.25 - panoramaHoriCenterRatio * panor
amaAspectRatio)) / panoramaAspectRatio;
if(texy < 0.0 || texy > 1.0){ discard; }
highp vec2 texCoord = vec2(texx, texy);
lowp vec4 texColor = texture2D(tex, texCoord);
gl_FragColor = (pixelColor * bwColor + texColor * bwTexColor) / (bwCol
or + bwTexColor);
gl_FragColor.a = 1.0 - pixelSelection * 0.5;
}


"ERROR: 0:1: '130' : version number not supported\n"
""
QOpenGLShader::compile(Vertex): ERROR: 0:1: '130' : version number not supported

ERROR: 0:6: 'isSelected' : syntax error

*** Problematic Vertex shader source code ***
#version 130
#line 2
attribute highp vec4 position;
attribute highp vec3 normal;
attribute lowp vec4 color;
attribute lowp vec2 texCoord;
attribute uint isSelected;
uniform highp mat4 viewMatrix;
uniform highp mat4 modelMatrix;
uniform highp mat4 projectionMatrix;
varying lowp vec4 pixelColor;
varying lowp vec2 pixelTexCoord;
varying lowp float pixelSelection;
void main(void)
{
gl_Position = projectionMatrix * viewMatrix * modelMatrix * position;
pixelColor = color;
pixelTexCoord = texCoord;
pixelSelection = isSelected == 0u ? 0.0 : 1.0;
}

I am not familiar with openGL Why the "isSelected" is syntax error?

Any reply will be helpful. thanks

确定两个孤立直线段集合之间相对位置的问题

现有算法识别的 intersection/incidence 约束不能涵盖实际场景的大多数情况。
考虑如下常见情况:

  1. 当室内场景含有独立立柱时,在地板、天花板不存在水平边与之相连时(一般情况一定都是这样),如何使之与其它房间结构建立关联?
  2. 室外场景多个互不相接的楼房,如何确定每个独立楼房的远近(深度)?

可能的方案:

  1. 假定每个独立直线段集合底部皆与相同地平面相接,如此则可以建立其底部端点相互之间的水平约束。

    1.1 然而也许会存在很多情况使得物体底部识别不完整,譬如室外楼房底端经常被其它(非Manhattan)物体遮挡,因此我们很难获取正确的底部端点投影位置。

  2. 使用尽可能简单的交互来指定其关系。

Program crashing with OpenCV assertion fails

Hello,

I was trying to get your code to run. After setting up everything as instructed, I was able to start up the program. For the first 2 runs, it gave the outputs till the superpixel segmentation, but then started crashing. As a result I was unable to get till the depth estimation. Strangely, after those two runs the program has started to crash even before showing any output that it was showing before. In both cases the console had the following errors:

file "E:/Panoramix/cache\Panorama\E..Projects.Pano3D.Panoramix.testdata.indoor_pano1_jpg_LayoutVersion0_on_on_on_off_off_off_off_options.cereal" saved
file "E:/Panoramix/cache\Panorama\E..Projects.Pano3D.Panoramix.testdata.indoor_pano1_jpg_LayoutVersion0_on_on_on_off_off_off_off_report.cereal" saved
file "E:/Panoramix/cache\Panorama\E..Projects.Pano3D.Panoramix.testdata.indoor_pano1_jpg_LayoutVersion0_on_on_on_off_off_off_off_preparation.cereal" loaded
file "E:/Panoramix/cache\Panorama\E..Projects.Pano3D.Panoramix.testdata.indoor_pano1_jpg_hcamsgcs_16_500_500_200.cereal" cannot be loaded!
[Message when executing '[~, ~, slabelConfMap] = gc(im);']:
Undefined function 'gc' for input arguments of type 'uint8'.

OpenCV Error: Assertion failed (!fixedType() || ((Mat*)obj)->type() == mtype) in cv::_OutputArray::create, file C:\build\master_winpack-build-win64-vc14\opencv\modules\core\src\matrix.cpp, line 2246

I am running on Windows 10, Visual Studio Community 2015 and MATLAB 2016a. Hope you can make sense of what's going wrong here.

获取含(不精确)相机参数的场景照片数据集

需要获取多个场景定点照片数据集,包括至少2个室内场景和2个室外场景。
要求:

  1. 拍摄时拍摄者位置基本不变。
  2. 须同时获取每张照片拍摄时的相机角度数据以及尽可能多的相机参数。
  3. 照片须在水平方向须覆盖360度,竖直方向须覆盖180度。
  4. 相邻角度照片之间须具有较大重叠性。
  5. 照片越多越好,场景覆盖越全面越好。

需要将模版参数的命名方法规范化

如在 core::MinimumSpanningTree 方法中,当前使用 :

  1. VertIteratorT 暗示值类型为 Vert 的 input 类型 iterator
  2. EdgeIteratorT 暗示值类型为 Edge 的 input 类型 iterator
  3. EdgeOutputIteratorT 暗示值类型为 Edge 的 output 类型 iterator
  4. EdgeVertsGetterT 暗示输入 Edge 类型, 返回多个 Vert 类型的 Functor,用于获取与边关联的点
  5. EdgeCompareOnWeightT 暗示输入两个 Edge 类型,返回一个 bool 类型的 Functor,用于比较是否第一条边的权值小于第二条边
  6. VertCompareT 暗示输入两个 Vert 类型,返回一个 bool 类型的 Functor,用于对 Vert 进行排序

然而上述命名方法皆不够直观,需要依赖注释来进行额外说明。
我们需要一种更加规范的命名方式,能够尽可能直接指明某一个参数类型的性质与用法。

no makefile

Hello YANG,
no makefile was generated after I did cmake. this are the files in my build folder:
$(Configuration)/
CMAKEFILES/
executable/
panoramix/
thirdparty/
ALL_BUILD.vcxproj
ALL_BUILD.vcxproj.filters
cmake_install.cmake
CMakeCache.txt
Panoramix.sln
ZERO_CHECK.vcxproj
ZERO_CHECK.vcxproj.filters
无标题

I don't kown what' wrong.

Problems about the structure of output mat file.

Hi,

I have closed the showgui options due to lack of gpu. and I have got obj and mat output file at present.
I dont understand the usage of depth, planes and segs in the output mat file.

1.depth
the size of depth mat is quite similar with the size of panorama images.
the value of the mat ranges from 0.57 to 1.5 maybe.
I'd like to know its physical meaning. what's the relation between depth here and space depth?
What's the correspondence between panorama pixels and depth here?

  1. planes
    There is reconstruction flag in each planes structure.
    I dont understand the reconstruction process the each plane. It's critical for me.
    Because the output obj file without texture information looks nice when it's rendered by meshlab.
    I want to know how you make it.

3.segs
Dose segs represent the superpixels label? why is the size of this matrix quite similar with the size of panorama images?

May I have your webchart ID?

Panolyz_GUI 方面的工作

  1. 指定 region orientation 时需要同时考虑相邻 line orientation 约束如何变换
  2. 添加 save/load 功能
  3. 修复重建界面更新数据时刷新窗口崩溃的 bug

Local Manhattan 实现规划

  1. 目标场景是什么?收集用于测试的图片数据
  2. 需要考虑的约束内容?
  3. 求解方法是什么?
  4. 梳理算法框架

系统问题

请问是不是只有在wins下的vs 2015下才可以用?可以在ubuntu下使用吗?

CVX库的问题

你好!
当我编译完之后,按照你说的配置完,测试测试数据时,出现问题,主要CVX库中出现问题,结果如下:
image
image
不知道为什么会出现这个问题?麻烦帮忙分析一下,谢谢!

Can not Generate build on CMake

Hi Yang:
 I'm very impressive about your work. But I meet a problem when I try to build your project by myself. I follow your instruction to Configure and Generate the build by CMake. But I stuck on
Generate model:
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_CREATE_STATIC_LIBRARY
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
Generating done

How do I set thos variable to make Generate finish?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.