Giter Site home page Giter Site logo

kinfu_remake's Introduction

KinFu remake

This is lightweight, reworked and optimized version of Kinfu that was originally shared in PCL in 2011.

Key changes/features:

  • Performance has been improved by 1.6x factor (Fermi-tested)
  • Code size is reduced drastically. Readability improved.
  • No hardcoded algorithm parameters! All of them can be changed at runtime (volume size, etc.)
  • The code is made independent from OpenCV GPU module and PCL library.

Dependencies:

  • Fermi or Kepler or newer
  • CUDA 5.0 or higher
  • OpenCV 2.4.9 with new Viz module (only opencv_core, opencv_highgui, opencv_imgproc, opencv_viz modules required). Make sure that WITH_VTK flag is enabled in CMake during OpenCV configuration.
  • OpenNI v1.5.4 (for Windows can download and install from http://pointclouds.org/downloads/windows.html)

Implicit dependency (needed by opencv_viz):

  • VTK 5.8.0 or higher. (apt-get install on linux, for windows please download and compile from www.vtk.org)

Screenshot:

kinfu_remake's People

Contributors

drmateo avatar justwon avatar nerei avatar zhangxaochen 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kinfu_remake's Issues

Unknown SM version 5.0! Problem

Hi, thanks for the source code.
I've compiled without errors but I have a little problem when I'm trying to run demo executable:

~ $ sudo /home/trinidad/kinfu_remake/build/bin/demo
Device 0: "GeForce GTX 750 Ti" 2047Mb
Can't determine number of cores. Unknown SM version 5.0!
, sm_50, 0 cores, Driver/Runtime ver.7.50/7.50
KinFu2 error: invalid device function /home/trinidad/kinfu_remake/kfusion/src/cuda/tsdf_volume.cu:38

My kinect 1414 works perfectly fine. I installed Cuda-7.5, Openni from git repository, opencv-2.4.8 (only core, highgui, imgproc and viz modules with shared _libs)
I really don't know what is the problem, if someone can help me a little that would be great!!.
I'm using linux mint mate 17.2 Rafaela mate edition 64 bits

Bye, in advance
José Soto

Segmentation Fault when starting Demo

Hi,

I am getting a segmentation fault when trying to start the Demo. Found out that the line 57: cv::imshow("Scene", view_host_); is the first responsible.
Had to install OpenCV 2.4.10 instead of 2.4.9. Any ideas?

Thanks for your help and the implementation.

Vincent

Projecting the 3d mesh or point cloud to image plane is not right using camera pose ?

I have used the camera pose to project 3d mesh to 2d image plane. But the result is not correct. I used kinfu_.getCameraPose() to get R,T and the following code to :
Affine3f cam2vol = pose_.inv() * camera_pose;
to get cam2vol ,and then cam2vol.inv() is the vol2cam transform. With the camera Matrix (intr.fx, intr.fy, intr.cx, intr.cy) to do projection. but the result is not correct.

Which transform the camera_pose and pose_ represented? What is the relation among volume coordinate system , world coordinate system or camera coordinate system?

What's the problem?
thanks

It seems the camera poses returned by kinfu_.getCameraPose() is not right:
pose

TSDF

Hi,
And i need to calculate TSDF of 3D data (.ply, .pcd ..) but not of depth images.

can someone help me out here Just by an idea.
It will be a big help, I am stuck over here for days.

why use x-flip images ?

I found the images captured in the demo app are x-flipped, what's the consideration?
For the mirrored images ,the alignment of color and depth image is not good as non-flipped images.

mirror

no_mirror

nvcc fatal : Unsupported gpu architecture 'compute_20' WHILE BUILDING

Dear everyone,
I'm in trouble when building this demo as the title shows. Error message goes like below:

CMake Error at kfusion_generated_imgproc.cu.o.cmake:207 (message):
Error generating
/home/yang/Desktop/KinFu-Demo/kinfu-remake/build/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_imgproc.cu.o

It is like I could not build out the output file "kfusion_generated_imgproc.cu.o " because of the nvcc fatal problem.

I've consulted the solution from the Internet which says I should modify my Makefile.config. But I have so many files containing these messages which makes me so confusing to do with them. I wonder whether you have a solution about this. Thank you all.

Here is my email address:
[email protected]

I am doing the Kinect fusion on Intel-realsense-D400x.

This is my error message below:

[ 7%] Building NVCC (Device) object kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o
nvcc fatal : Unsupported gpu architecture 'compute_20'
CMake Error at kfusion_generated_imgproc.cu.o.cmake:207 (message):
Error generating
/home/yang/Desktop/KinFu-Demo/kinfu-remake/build/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_imgproc.cu.o

kfusion/CMakeFiles/kfusion.dir/build.make:77: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o] Error 1
CMakeFiles/Makefile2:85: recipe for target 'kfusion/CMakeFiles/kfusion.dir/all' failed
make[1]: *** [kfusion/CMakeFiles/kfusion.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

And my cuda version:

Detected 1 CUDA Capable device(s)

Device 0: "GeForce 710M"
CUDA Driver Version / Runtime Version 9.1 / 9.0
CUDA Capability Major/Minor version number: 2.1
Total amount of global memory: 1985 MBytes (2081816576 bytes)
MapSMtoCores for SM 2.1 is undefined. Default to use 64 Cores/SM
MapSMtoCores for SM 2.1 is undefined. Default to use 64 Cores/SM
( 2) Multiprocessors, ( 64) CUDA Cores/MP: 128 CUDA Cores
GPU Max Clock rate: 1550 MHz (1.55 GHz)
Memory Clock rate: 900 Mhz
Memory Bus Width: 64-bit
L2 Cache Size: 131072 bytes
Maximum Texture Dimension Size (x,y,z) 1D=(65536), 2D=(65536, 65535), 3D=(2048, 2048, 2048)
Maximum Layered 1D Texture Size, (num) layers 1D=(16384), 2048 layers
Maximum Layered 2D Texture Size, (num) layers 2D=(16384, 16384), 2048 layers
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 49152 bytes
Total number of registers available per block: 32768
Warp size: 32
Maximum number of threads per multiprocessor: 1536
Maximum number of threads per block: 1024
Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
Max dimension size of a grid size (x,y,z): (65535, 65535, 65535)
Maximum memory pitch: 2147483647 bytes
Texture alignment: 512 bytes
Concurrent copy and kernel execution: Yes with 1 copy engine(s)
Run time limit on kernels: No
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Alignment requirement for Surfaces: Yes
Device has ECC support: Disabled
Device supports Unified Addressing (UVA): Yes
Supports Cooperative Kernel Launch: No
Supports MultiDevice Co-op Kernel Launch: No
Device PCI Domain ID / Bus ID / location ID: 0 / 1 / 0
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 9.1, CUDA Runtime Version = 9.0, >NumDevs = 1
Result = PASS

Color integration

Hi, Super nice job you have done with this kinfu_remake! Thanks a lot. Ultimately, I would like to export the reconstructed surface as a colored mesh. I know that marching cube needs to be ported from PCL version (which I was using so far), as mentioned in issues #12, but first I wanted to try to integrate the colors from the RGB camera (in a similar way as what is done in PCL) and get a colored point cloud.

I tried to define a color volume, and integrate the colors in it but it seems I have a few problems with GPU memory management... Specifically, I get a
KinFu2 error: unspecified launch failure
when I try to access 3D coordinates of points in the cloud (obtained with
DeviceArray<Point> kfusion::cuda::TsdfVolume::fetchCloud(DeviceArray<Point>& cloud_buffer) const)

I know it's not extremely clear and I apologize for that. I guess I was wondering if maybe someone could point me in the right direction after looking at my implementation.

compile with cuda 10.2

I'm trying to compile the code on my Ubuntu 18.04 LTS machine, with cuda=10.2, Nvidia driver version=440.33.01.
I suspect the code is not compatible with cuda 10.
Cuda 9 is not officially supported on Ubuntu 18.04 so I cannot test the compilation with cuda 9.
I'm attaching the compilation output below.
Is there a way to make the project compile with cuda>=10?
I'll appreciate your help!

(base) smosesli@smosesli-gpu:~/dynamicfusion$ make -j16
[ 5%] Building NVCC (Device) object kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_tsdf_volume.cu.o
[ 11%] Building NVCC (Device) object kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o
[ 16%] Building NVCC (Device) object kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_proj_icp.cu.o
In file included from /home/smosesli/dynamicfusion/kfusion/src/cuda/imgproc.cu:1:0:
/usr/local/cuda/include/host_defines.h:54:2: warning: #warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead." [-Wcpp]
#warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead."
^~~~~~~
In file included from /home/smosesli/dynamicfusion/kfusion/src/cuda/imgproc.cu:1:0:
/usr/local/cuda/include/host_defines.h:54:2: warning: #warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead." [-Wcpp]
#warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead."
^~~~~~~
In file included from /home/smosesli/dynamicfusion/kfusion/src/cuda/imgproc.cu:1:0:
/usr/local/cuda/include/host_defines.h:54:2: warning: #warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead." [-Wcpp]
#warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead."
^~~~~~~
In file included from /home/smosesli/dynamicfusion/kfusion/src/cuda/imgproc.cu:1:0:
/usr/local/cuda/include/host_defines.h:54:2: warning: #warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead." [-Wcpp]
#warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead."
^~~~~~~
In file included from /home/smosesli/dynamicfusion/kfusion/src/cuda/imgproc.cu:1:0:
/usr/local/cuda/include/host_defines.h:54:2: warning: #warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead." [-Wcpp]
#warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead."
^~~~~~~
In file included from /home/smosesli/dynamicfusion/kfusion/src/cuda/imgproc.cu:1:0:
/usr/local/cuda/include/host_defines.h:54:2: warning: #warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead." [-Wcpp]
#warning "host_defines.h is an internal header file and must not be used directly. This file will be removed in a future CUDA release. Please use cuda_runtime_api.h or cuda_runtime.h instead."
^~~~~~~
/home/smosesli/dynamicfusion/kfusion/src/cuda/temp_utils.hpp(585): warning: function "__ballot"
/usr/local/cuda/include/sm_20_intrinsics.h(405): here was declared deprecated ("__ballot() is deprecated in favor of __ballot_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/temp_utils.hpp(597): warning: function "__all"
/usr/local/cuda/include/device_atomic_functions.h(179): here was declared deprecated ("__all() is deprecated in favor of __all_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/temp_utils.hpp(585): warning: function "__ballot"
/usr/local/cuda/include/sm_20_intrinsics.h(405): here was declared deprecated ("__ballot() is deprecated in favor of __ballot_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/temp_utils.hpp(597): warning: function "__all"
/usr/local/cuda/include/device_atomic_functions.h(179): here was declared deprecated ("__all() is deprecated in favor of __all_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(54): error: identifier "__float2half_rn" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(59): error: identifier "__half2float" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(61): error: identifier "__half2float" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(54): error: identifier "__float2half_rn" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(59): error: identifier "__half2float" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(61): error: identifier "__half2float" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/tsdf_volume.cu(541): warning: function "__all"
/usr/local/cuda/include/device_atomic_functions.h(179): here was declared deprecated ("__all() is deprecated in favor of __all_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/tsdf_volume.cu(541): warning: function "__all"
/usr/local/cuda/include/device_atomic_functions.h(179): here was declared deprecated ("__all() is deprecated in favor of __all_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/tsdf_volume.cu(638): warning: function "__ballot"
/usr/local/cuda/include/sm_20_intrinsics.h(405): here was declared deprecated ("__ballot() is deprecated in favor of __ballot_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/tsdf_volume.cu(638): warning: function "__ballot"
/usr/local/cuda/include/sm_20_intrinsics.h(405): here was declared deprecated ("__ballot() is deprecated in favor of __ballot_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/tsdf_volume.cu(638): warning: function "__ballot"
/usr/local/cuda/include/sm_20_intrinsics.h(405): here was declared deprecated ("__ballot() is deprecated in favor of __ballot_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/temp_utils.hpp(585): warning: function "__ballot"
/usr/local/cuda/include/sm_20_intrinsics.h(405): here was declared deprecated ("__ballot() is deprecated in favor of __ballot_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/temp_utils.hpp(597): warning: function "__all"
/usr/local/cuda/include/device_atomic_functions.h(179): here was declared deprecated ("__all() is deprecated in favor of __all_sync() and may be removed in a future release (Use -Wno-deprecated-declarations to suppress this warning).")

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(54): error: identifier "__float2half_rn" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(59): error: identifier "__half2float" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/device.hpp(61): error: identifier "__half2float" is undefined

/home/smosesli/dynamicfusion/kfusion/src/cuda/imgproc.cu(270): error: identifier "__float2half_rn" is undefined

3 errors detected in the compilation of "/tmp/tmpxft_00004468_00000000-9_proj_icp.compute_61.cpp1.ii".
3 errors detected in the compilation of "/tmp/tmpxft_00004467_00000000-9_tsdf_volume.compute_61.cpp1.ii".
CMake Error at kfusion_generated_proj_icp.cu.o.cmake:280 (message):
Error generating file
/home/smosesli/dynamicfusion/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_proj_icp.cu.o

kfusion/CMakeFiles/kfusion.dir/build.make:642: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_proj_icp.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_proj_icp.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMake Error at kfusion_generated_tsdf_volume.cu.o.cmake:280 (message):
Error generating file
/home/smosesli/dynamicfusion/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_tsdf_volume.cu.o

kfusion/CMakeFiles/kfusion.dir/build.make:935: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_tsdf_volume.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_tsdf_volume.cu.o] Error 1
4 errors detected in the compilation of "/tmp/tmpxft_0000446e_00000000-9_imgproc.compute_61.cpp1.ii".
CMake Error at kfusion_generated_imgproc.cu.o.cmake:280 (message):
Error generating file
/home/smosesli/dynamicfusion/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_imgproc.cu.o

kfusion/CMakeFiles/kfusion.dir/build.make:349: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o] Error 1
CMakeFiles/Makefile2:116: recipe for target 'kfusion/CMakeFiles/kfusion.dir/all' failed
make[1]: *** [kfusion/CMakeFiles/kfusion.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

demo does not run even though pcl_kinfu_app runs.

Ubuntu 16.04
PCL 1.8
OpenCV 3.3.1
VTK 9.0

Hello, the pcl_kinfu_app runs very well, but the demo in kinfu_remake does not run, only produces the following error.

Would you give me any comment to fix this ?

Maybe, pcl library device can be used to overcome this problem, but it seems not a good idea ...

Device 0:  "GeForce GTX TITAN X"  12206Mb, sm_52, 3072 cores, Driver/Runtime ver.9.0/8.0
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".

Reinstalling the application may fix this problem.
Aborted (core dumped)

pck_kinfu_app produces the following and runs well:

Device 0:  "GeForce GTX TITAN X"  12206Mb, sm_52, 3072 cores, Driver/Runtime ver.9.0/8.0

Remove dependency on OpenNI

It would be nice (although I know its probably pretty difficult) to completely extract the openni dependency and be able to take in arbitrary deph camera data. Perhaps the best thing would be to divide this project into two: one that has an agnostic depth image system, and another that wraps openni and feeds the depth data into the first system. That way, users can write other wrappers for other depth cameras.

Storing the final mesh

Hi all,

This is not really an issue, rather a question I have.
The source-code works really nice, thanks for open-sourcing this.
However there is the need to store the final mesh that is created during the reconstruction.
There is a rather tedious way to do this (some people extract the pointcloud out of the tsdf with fetchCloud, and then use meshlab to filter and mesh these points), but I was wondering if you have any advice on a better way to do this.

Thanks!

Questions: Can external tracking data be used instead of internal pose estimate?

Hi there, just arriving at kinfu_remake Party from learning (late) about Kinect Fusion-> PCL kinFu-> here

As I understand these processes rely on RGB feature detection and ICP for pose estimation. is that correct? I'm very interested in the overall approach used to reconstruct a fused meshes in realitime, but (have; and) would like to use an external tracking system to provide an absolute device pose to this process.

Is doing this feasible? Or is the code too tightly written to consider providing a (known) submillimeter accurate pose truth.

unresolved external symbol

implementation of void bilateralFilter(const Depth& src, Depth& dst, int kernel_size, float sigma_spatial, float sigma_depth) not exist
and onher function from internal.hpp

Demo hangs or finishes with timeout error message

I try to run the demo and it hangs for a while, after a few seconds it finishes with the error message:

KinFu2 error: Init failed: Got a timeout while waiting for a network command to complete!

Why is this happening? As a side note, after the program finishes "/usr/bin/XnSensorServer" is still running.

Thanks

error: no suitable constructor exists to convert from "unsigned short" to "__half"

kfusion/CMakeFiles/kfusion.dir/build.make:379: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_proj_icp.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_proj_icp.cu.o] Error 1
/home/gcw/kinfu_remake-master/kfusion/src/cuda/device.hpp(76): error: no suitable constructor exists to convert from "unsigned short" to "__half"

/home/gcw/kinfu_remake-master/kfusion/src/cuda/device.hpp(79): error: no suitable constructor exists to convert from "unsigned short" to "__half"

2 errors detected in the compilation of "/tmp/tmpxft_0000189b_00000000-14_tsdf_volume.compute_20.cpp1.ii".
CMake Error at kfusion_generated_tsdf_volume.cu.o.cmake:266 (message):
Error generating file
/home/gcw/kinfu_remake-master/build/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_tsdf_volume.cu.o

how to solve it? please help me

Add some developer documentation for widely used structs/methods

First, let me start by saying that this application is amazing. A thing that could make it even more useful to new developers would be to add some documentation directly in the code. For example:

  1. KinFuParams: This struct contains lots of parameter for which the impact of modifying the values is not documented. Adding some guidelines/rule of thumb for the use of these parameters would be welcome to new users. For example: What parameters should I pay more attention if I want to scan small objects, objects with sharp features, etc?

  2. What is the meaning of the different flag values for the KinFu::renderImage method?

run demo error

when run demo, some errors show:

$./bin/demo 
Device 0:  "GeForce GTX 1070"  8106Mb
Can't determine number of cores. Unknown SM version 6.1!
, sm_61, 0 cores, Driver/Runtime ver.8.0/8.0
KinFu2 error: Init failed: Can't create any node of the requested type!
	/home/Project/kinfu_remake/kfusion/src/capture.cpp:85

ICP fail

When run demo, The ICP aways fail.

bool ok = icp_->estimateTransform(affine, p.intr, curr_.points_pyr, curr_.normals_pyr, prev_.points_pyr, prev_.normals_pyr);

I read codes in "projective_icp.cpp", but all of them seem normal.

invalid device function

Device 0: "GeForce GTX 1060 6GB" 6144Mb, sm_61, 1280 cores, Driver/Runtime ver.8.0/8.0
KinFu2 error: invalid pitch argument E:\kinfu_remake\kfusion\src\device_memory.cpp:231

Export point clouds

Hi, first, I would like to thank for this amazing app for the kinect.
Second, I have a little question, it's not a issue but I would like to know if there is a way to export 3D models to a .ply or xyz. format?? I've seen that it can export them to a .vrml file and a wavefrom objet to visualization toolkit, however, I've never worked with VTK and my skills to programming are very poor

Bye, in advances
Damian

successful installation but i can't run it

Could you please help me ?

Device 0: "Quadro M1000M" 2048Mb
Can't determine number of cores. Unknown SM version 5.0!
, sm_50, 0 cores, Driver/Runtime ver.8.0/8.0
Baseline not available.

capture

running demo error!

Device 0: "NVS 315" 1024Mb, sm_21, 48 cores, Driver/Runtime ver.8.0/8.0
KinFu2 error: Init failed: Can't create any node of the requested type!
....\kinfu_remake-master\kfusion\src\capture.cpp:85

NVS 315's architecture is Fermi.
Anyone knows how to fix it?
Thanks!

Compilation error w/ OpenCV2 file

/usr/include/opencv2/contrib/contrib.hpp:273:23: error: ‘vector’ does not name a type
         Octree( const vector<Point3f>& points, int maxLevels = 10, int minPoints = 20 );

I'm just doing cmake .. and then make from a build sub-folder, but the make crashes fairly quickly with the above error. I have all dependencies installed including opencv2 and opencv3.

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.