-
Notifications
You must be signed in to change notification settings - Fork 114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[question] image size limitation? #88
Comments
The reason is that CUDA Textures have strict size limits. Until someone adds an alternative code path, the best we can do it giving a better and earlier warning. I propose PR#89 for that. |
I was looking to the code and it seems that you upscale the image per default by a factor of 2. The out of memory error comes from allocating an 3d array (cudaMalloc3DArray) of Would it be possible to rather use (levels - 1) x 2d array instead ? |
The upscaling by 2 is the default of the original SIFT paper. The RTX 2080 has a quite large amount of memory, but it limits the maximum Surface2DLayered size to 65536 (bytes) × 32768 × 2048. Are you sure that memory allocation fails in your case and not the creation of the surface? It is absolutely possible to use very much less memory at the price of slightly slower code. It was just never a goal for me. Several of the currently supported alternative downscaling approaches would not be supported in that case and feature points would have to be collected differently, but it could be done. Unfortunately, I'm not able to do it in the foreseeable future. |
You can adjust the SIFT params in popsift/src/popsift/sift_conf.h Line 104 in 8ea03b5
|
@fabiencastan @griwodz thanks for the explanation, it does make sense. |
When running popsift-demo.exe on an 20Mpixels PGM image (5456x3632), I ran into an out of memory error. The code is compiled on window10 with VC++2019, I use CUDA 10.2 and a GeForce RTX 2080 with 8 GB of RAM.
Do you have a limitation on the size of the image ?
Thanks
The text was updated successfully, but these errors were encountered: