Skip to content
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

What happens when ROI is selected ? #12236

Closed
Biopticon opened this issue Sep 29, 2023 · 18 comments
Closed

What happens when ROI is selected ? #12236

Biopticon opened this issue Sep 29, 2023 · 18 comments
Labels

Comments

@Biopticon
Copy link

I want to display and process only the selected ROI. This way I display only the area of interest and process a lot less amount of data. But nothing changes visually after I do that. Am I missing something?

@MartyG-RealSense
Copy link
Collaborator

MartyG-RealSense commented Sep 30, 2023

Hi @Biopticon In the RealSense SDK, the Region of Interest (ROI) function does not crop the image. It instead attempts to keep the intensity of the pixels in the ROI area at a pre-defined 'setpoint' value.

It is possible to crop a depth image horizontally and vertically, though it is complicated to do so. #2016 (comment) provides an example provided by a RealSense user of how they approached generating cropping.

An alternative method that may suit your needs is to define a post-processing Decimation Filter that reduces the complexity of the depth image by downsampling its resolution.

https://dev.intelrealsense.com/docs/post-processing-filters#decimation-filter

@MartyG-RealSense
Copy link
Collaborator

Hi @Biopticon Do you require further assistance with this case, please? Thanks!

@Biopticon
Copy link
Author

Biopticon commented Oct 8, 2023 via email

@MartyG-RealSense
Copy link
Collaborator

MartyG-RealSense commented Oct 9, 2023

D435 is a stereo depth camera like D405. The only RealSense camera models that used technology similar to structured light were the F200 and SR300 / SR305, which are obsolete and retired.

D405 is specially designed for high accuracy, high quality images at very close range. Accuracy will improve as the camera is moved closer to a surface. A discussion at the link below talks about D405 submillimeter accuracy.

https://support.intelrealsense.com/hc/en-us/community/posts/20608351547795-Need-information-related-to-accuracy-of-ReaslSense-cameras

For some surfaces the results from D405 will be better than D435 could provide at that range. However, because the D405 is not equipped with a dot pattern projector, some types of surfaces such as plain smooth ones with low texture or no texture will be more difficult to read depth information from than with D435.

D405 is the only RealSense model that is officially described as being capable of submillimeter accuracy.

D435 supports an 848x100 resolution 'high speed capture' mode that can provide 300 FPS but only has a processing burden equal to 90 FPS. It does this by restricting the viewpoint to a 100-high vertical strip at the center of the image. More information about this can be found in Intel's white-paper guide on the subject at the link below.

https://dev.intelrealsense.com/docs/high-speed-capture-mode-of-intel-realsense-depth-camera-d435

If you wrote a program in C++ language then you could also take advantage of the SDK's support for GLSL Processing Blocks, which can make use of a graphics GPU to accelerate the processing of functions such as pointcloud and alignment. GLSL is 'vendor neutral', meaning it can work with any GPU brand and not just a specific one such as Nvidia.

https://github.com/IntelRealSense/librealsense/tree/master/examples/gl

If you wish to discuss a confidential matter that you cannot write about publicly then you can email me.

@MartyG-RealSense
Copy link
Collaborator

Hi @Biopticon As your case is being handled by Intel outside of this support forum, do you wish to keep this GitHub case open for a further time or close it, please? Thanks!

@MartyG-RealSense
Copy link
Collaborator

Case closed due to no further comments received.

@Biopticon
Copy link
Author

Biopticon commented Oct 25, 2023 via email

@MartyG-RealSense
Copy link
Collaborator

I will follow up with Intel about your questions above and the salesperson contact. I will also re-open this case.

@Biopticon
Copy link
Author

Biopticon commented Oct 26, 2023 via email

@jnsweets
Copy link

Hi Cem,

I will try to address most, if not all, of your issues and questions. This may result in a longer dialogue to fully resolve everything but I'll start by responding to the specific items in the last comment above.

if I scan an object, say 10mm in length, width, and height, what D405 will produce on x, y, and z dimensions, 10.0, 10.5 or 11.0mm at 7-10cm working distance?
The answer to this depends on more details of the setup and operating conditions.

  • As mentioned earlier, the D405 does not include an integrated light or texture source and so the object of interest needs to be sufficiently illuminated and include some "natural" texture in order to obtain the best results.
  • You also mention this will be a "single scan". I interpret this to be static capture of the object from a fixed viewpoint. If the camera or object is actually scanned (moved), the results will be different (generally better).
  • The timescale over which the measurement occurs is also important - generally, the longer, the better.
  • Finally, the detailed shape of the object is also relevant. For example, the accuracy of measuring the outer dimensions of the object may be different from the ability to measure the size and shape of a surface deformation.

With the above caveats, and making a few simplifying assumptions, I can give some approximate answers.
The accuracy specs provided are for absolute distance from camera to object. While this affects the accuracy of the object measurements, the actual dimensional accuracy should be better than this in general but are different for each of the x,y, and z dimensions.
Z (depth): At a distance of ~10cm, the accuracy that an object's depth (e.g., height) can be measured depends on the height but should be well within 0.1mm for objects up to ~10mm with accuracy scaling with height. So, the accuracy of a ~1mm height change would be ~0.01mm. This is in the absence of any noise and based on the systematic depth error from the camera. RMS noise adds to these values and is determined by a variety of factors (e.g., texture, lighting, degree of filtering used). A rough number for moderate texture (e.g., comparable to wood grain), good lighting, and minimal filtering would be ~0.3% or ~0.3mm at a distance of 10cm. This could be improved with additional processing.
X, Y (lateral dimensions): This is really a question of spatial resolution. It is affected by some of the same factors as depth but is largely determined by the camera's resolution. In general, the spatial resolution of the depth image is several pixels (e.g., an depth edge/step spans ~4-8 pixels. If the corresponding RGB image is used to define the edge, this can be reduced to 1-2 pixels. For context, a D405 pixel at 100mm and HD resolution is ~0.15mm.

I've attached a few sample images of a wooden block with carved features that are on the scale of your application (~1mm deep, 10mm wide). The images were captured at a distance of ~100mm. This is to give you a sense of the what the camera is capable of producing. My conclusion is that it is feasible to meet your requirements but will require near optimal conditions and some additional processing.

If this looks sufficiently promising to you, my suggestion would be to obtain some cameras and test out the capabilities on actual test objects of interest.

Of course, feel free to follow-up with any questions or comments.

John
D405_Depth Image Examples_231027.pdf

@Biopticon
Copy link
Author

Biopticon commented Oct 31, 2023 via email

@jnsweets
Copy link

Hi Cem,

Github is a public forum, but I see this issue is already linked to a Zendesk ticket. You can reply in private on that ticket:

Ticket #21553
https://intel.zendesk.com/agent/tickets/21553

We can continue correspondence via Zendesk.

Thanks,
John

@Biopticon
Copy link
Author

Biopticon commented Nov 1, 2023 via email

@MartyG-RealSense
Copy link
Collaborator

Hi Cem, I tested the link and it worked correctly for me. It may be an issue with your login details that is causing the access issue.

@Biopticon
Copy link
Author

Biopticon commented Nov 1, 2023 via email

@jnsweets
Copy link

jnsweets commented Nov 1, 2023 via email

@MartyG-RealSense
Copy link
Collaborator

Hi @Biopticon As you have submitted a private Zendesk ticket, can this public GitHub issue now be closed please? Thanks!

@MartyG-RealSense
Copy link
Collaborator

Case closed due to no further comments received.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants