问题标签 [3dcamera]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JavaFX 围绕枢轴旋转相机
去年我发布了一个类似的问题,但由于它不是非常具有描述性并且总体上是一团糟,我决定完全重写它。
我正在用 JavaFX 制作一个简单的 3D 编辑器,它的相机运动类似于 Blender 或几乎任何其他的。我添加了围绕 x 轴的旋转,然后使用三角函数计算了其他 2 个旋转(y 和 z 轴)。x 和 y 轴的旋转都是相对于轴心点进行的,但 z 轴的旋转总是相对于屏幕/相机,而不是其轴心点。
为了更好地理解这个问题,我画出了轴的位置以及我想要它们的位置:
这是我用来计算角度的代码部分(尽管从我的观察来看,这似乎与我的问题无关):
为了使测试更容易,我在 Pastebin 上上传了代码。
编辑:我可以通过旋转所有东西来达到同样的效果,但是相机(这正是相机移动所做的)并使用 x 轴进行高度,但我正在寻找一个更优雅的解决方案。
point-clouds - 结构光3D扫描点云数据如何获取?
我正在尝试使用 3D 结构化照明扫描仪了解对象的 3D 重建,但我被困在一种解码相机和投影仪对应集的方法以用于重建 3D 点云的点上。3D 点云信息究竟是如何从这些对应关系中获得的信息中获取的?我想了解数学实现,而不是代码实现。
python - 使用 python 从深度 2D 图像到 3D 点云
我使用 3D ToF 相机流式传输深度 2D 图像,其中每个像素值都是以米为单位的距离测量值。
我知道相机的以下参数:cx、cy、fx、fy、k1、k2、k3、p1、p2。
我想将深度 2D 图像转换为点云,其中每个像素都转换为具有坐标 (X, Y, Z) 的点。
我不知道使用 OpenCV 还是手动进行此 3D 投影的最简单方法是什么?
point-cloud-library - PCL 3D 物体识别,输出了错误的变换矩阵
我将该示例用于 3D 对象识别,使用描述符搜索对应关系,然后使用对应关系进行 3D Hough 投票,例如https://pcl.readthedocs.io/projects/tutorials/en/latest/correspondence_grouping.html#id17。
问题是我得到了错误的转换矩阵作为输出,即使云彼此对齐。对于测试,我采用了模型的点云,并对其进行了剪切和提取。然后我将相同的点云(没有切割或提取任何东西)用作场景,所以本质上两个云之间的平移应该是 0 ?但事实并非如此,对于不同的迭代,即使点云完美对齐,我也会得到完全不同的矩阵。
以下是我使用的参数:
而且我还附加了两个具有两个不同结果的测试示例。即使场景和对象在两种情况下都相同,生成的翻译矩阵也有很大不同。
我的问题是,什么可能导致这个结果?有没有人遇到过类似的事情?这是我得到的结果:
云对 1
矩阵 1
云对 2
矩阵 2