Code Monkey home page Code Monkey logo

stereolabs / zed-sdk Goto Github PK

View Code? Open in Web Editor NEW
713.0 25.0 442.0 5.59 MB

⚡️The spatial perception framework for rapidly building smart robots and spaces

Home Page: https://stereolabs.com

License: MIT License

CMake 1.19% C++ 73.65% C 0.45% Cuda 0.38% Python 16.98% C# 7.04% CSS 0.20% HTML 0.12%
zed-camera stereo-vision slam 3d-reconstruction computer-vision depth-camera depth-estimation human-pose-estimation machine-learning object-detection

zed-sdk's Introduction

ZED SDK

The ZED SDK is a cross-platform library designed to get the best out of the ZED cameras.
In this project, we provide tutorials and code samples to get started using the ZED SDK API.

Website · Store · API Reference · Community · Blog

SDK Version ZED Discourse Docker Pulls Github Stars


🎉 The ZED SDK 4.1 is released! We support the ZED X and ZED X Mini cameras, added the Fusion API for multi-camera Body Tracking, and more! Please check the Release Notes of the latest version for more details.

Overview

Depth Sensing Object Detection Body Tracking
Depth Sensing Object Detection Body Tracking
Positional Tracking Global Localization Spatial Mapping
Positional Tracking Global Localization Spatial Mapping
Camera Control Plane Detection Multi Camera Fusion
Camera Control Plane Detection Multi Camera Fusion

Why ZED?

  • 🎯 End-to-end spatial perception platform for human-like sensing capabilities.
  • ⚡ Real-time performance: all algorithms of the ZED SDK are designed and optimized to run in real-time.
  • 📷 Reduce time-to-market with our comprehensive, ready-to-use hardware and software designed for multiple applications.
  • 📖 User-friendly and intuitive, with easy-to-use integrations and well-documented API for streamlined development.
  • 🛠️ Wide range of supported platforms, from desktop to embedded PCs.

Getting started

The ZED SDK contains all the libraries that power your camera along with tools that let you experiment with its features and settings.

To get started:

The documentation and API reference are great starting points to learn more about the ZED SDK and its many modules.

Samples

This repository contains ready-to-use and samples to start using the ZED SDK with only a few lines of code. They are organized by ZED SDK module:

  • Tutorials - A series of basic tutorials that demonstrate the use of each API module.

  • Camera Control - This sample shows how to adjust the ZED camera parameters.

  • Camera Streaming - This sample shows how to stream and receive on local network the ZED's video feed.

  • Depth Sensing - This sample shows how to capture a 3D point cloud and display with OpenGL. It also shows how to save depth data in different formats.

  • Positional Tracking - This sample shows how to use positional tracking and display the result with OpenGL.

  • Global Localization - This sample shows how to fuse the ZED SDK's positional tracking with GNSS data for global positioning.

  • Spatial Mapping - This sample shows how to capture 3D meshes with the ZED and display it with OpenGL. Classic Mesh and Point Cloud fusion are available.

  • Object Detection - This sample shows how to use the Object Detection API module with the ZED.

  • Body Tracking - This sample shows how to use the Body Tracking API with the ZED.

  • Recording - This sample shows how to record and playback video files in SVO format. SVO files let you use all the ZED SDK features without having a ZED connected.

Supported platforms

Here is the list of all supported operating systems for the latest version of the ZED SDK. Please find the recommended specifications to make sure your configuration is compatible with the ZED SDK.

Ubuntu LTS Windows Jetson

The ZED SDK requires the use of an NVIDIA GPU with a Compute Capability > 5.

If you are not familiar with the corresponding versions between NVIDIA JetPack SDK and Jetson Linux, please take a look at our blog post.

Integrations

The ZED SDK can be easily integrated into projects using the following programming languages:

C++ Python C# C

Thanks to its comprehensive API, ZED cameras can be interfaced with multiple third-party libraries and environments.

Unity Unreal Engine 5 OpenCV ROS ROS 2
Pytorch YOLO Matlab Isaac SIM Touch Designer

Community

Join the conversation and connect with other ZED SDK users to share ideas, solve problems, and help make the ZED SDK awesome. Our aim is to make it extremely convenient for everyone to communicate with us.

  • Discourse is our forum where all ZED users can connect. This is the best place to brainstorm and exchange about ZED cameras, ZED SDK software, and other Stereolabs products. Feel free to create an account and ask your questions, or even share your awesome projects!

  • Twitter Follow Stereolabs @Stereolabs3D for official news and release announcements.

  • GitHub If you come across a bug, please raise an issue in this GitHub repository.

  • Email To talk to Stereolabs directly, the easiest way is by email. Get in touch with us at [email protected].



zed-sdk's People

Contributors

adujardin avatar alassagne-sl avatar ashbabu avatar brossi avatar bvallon-sl avatar jmckay avatar lilianmallardeau avatar mattrouss avatar myzhar avatar nesnes avatar nilutpolkashyap avatar obraun-sl avatar p-yver avatar qt-truong avatar ymtoo 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  avatar  avatar  avatar  avatar

zed-sdk's Issues

focal length and field of view

Hi,

thanks for the help with finding the focal length.

I am trying to relate the field of view to the focal length. My understanding is that the relation
fov = 2 * atan ( (image sensor width/2) / focal length ). From this, would my image sensor width be my resolution (eg 720 for a 1280x720 image) or actual values of the sensor size?

For the sensor size, is it correct to say that for 1280x720 resolution, with pixel_size_mm as 0.004mm, the sensor area is (0.0040.004) * 4000000 . It says on the zed spec that we have 4M pixels. Hence the sensor size is sqrt ( (0.0040.004) * 4000000)?

Any help is greatly appreciated.

SVO Recording very CPU intensive

When running the recording example (as it comes) on a Jetson TX2 with a ZED Mini it uses almost 3 CPU cores at 100% each. It seems that the problem is the compression, as on SVO_COMPRESSION_MODE_RAW, the CPU usage is only at about 1 CPU core at 100% usage.

To improve the situation I tried to drop the framer rate by adding 'initParameters.camera_fps = 30;. It shows that it records only at 30fps, however there is no improvement what so ever in the CPU usage, so I assume that setting is ignored in recording mode.

Our application requires low power, and as we can not run full mapping/tracking for the entire time, we were hoping that it would be possible to store (buffer) the stream to a file (or even better keep it in RAM) and then replay it when we need it.

Is there a way to get about that which doesn't drain the resources as much? What is the situation with the RAW mode? It says it is deprecated and doesn't support IMU data. Is this true?

ZED not opening: cudaErrorInvalidValue

I ran the ZED Depth Viewer and got a cudaErrorInvalidValue and subsequently a segmentation fault.

My system is Ubuntu 16.04, Cuda 8, GPU is Nvidia GTX 1080Ti.

The SDK version is 2.2-RC4.

I also have to use sudo with guvcview -d /dev/video0 -x 2560x720 -i 30 to get access to the camera. Is it possible to do this without it?

view retrieved measure

So , I am retrieving a disparity measure on a sl:;Mat and I would like to view it. I know that in the depth_sensing sample, you are using an openGL viewer, but because I am getting some errors with that, is there another way ?

       Camera zed;
       sl::Mat disparity_measure;
      // Get DISPARITY MEASURE 
      zed.retrieveMeasure(disparity_measure, sl::MEASURE_DISPARITY, sl::MEM_GPU); 
      //view(disparity_measure)??

EDIT: on the API, it says that the 'MEASURE_DISPARITY' is a 'Disparity map, 1 channel , FLOAT'
What does that mean?

view and save depth map after retrieveMeasure

I want to view the depth map, so referring to a previous issue I wrote this:

sl::Mat depthIm; zed->retrieveMeasure(depthIm, sl::MEASURE_DEPTH); cv::Mat tmp_cv; tmp_cv = cv::Mat(depthIm.getHeight(), depthIm.getWidth(), CV_32FC1, depthIm.getPtr<sl::uchar1>(sl::MEM_CPU)); cv::imshow("View2", tmp_cv);
is it correct ?

and then in order to save the video, what shall I do ?
cv::VideoWriter *video_writer = new cv::VideoWriter(<output_path>, int(CV_FOURCC('M',4','S','2'), (int)zed->getCameraFPS(), cv::Size(zed->getResolution().width, zed->getResolution().height)); video_writer->write(tmp_cv2);
am I doing anything wrong above ?

Jetson TX2 + Jetpack 3.2 + Orbitty carrier board, Bandwidth is too low

I did not manage to run the Zed Stereo camera on jetson TX2 with Orbitty using the Jetpack 3.2. I thought it was a bad cable issue at first but now I feel it could be a software issue. It worked using Jetpack 3.1 and works well on my laptop. I am wondering if any knows what the issue could be.

When Running the diagnostic tool it shows that the USB bandwidth is too low
Frame drop: 57/480
Frame tearing: 3/480
Camera: OK
ZED_Diagnostic_Results.txt

ZED

hello ,Why am I installing a ZED driver under Linux that doesn't generate libcudpp.so library files?

Ubuntu 17.10 ZED Detected, but cannot open Camera.

Hey guys,

I know that 17.10 is still an unsupported release but I think everything works. (dependencies etc.) .
However i'm not able to open the camera.

I get this error.

*** Download Factory Calibration ***
ZED Detected, but cannot open Camera. Please check that you don't have another camera connected...
ZED SDK installation complete !

Is there some trick i am missing? Or do I have to wait till Ubuntu 17.10 is supported? I'm running kernel 4.13.0-16-generic

std::length_error while saving mesh in spatial mapping example using vs2017.5

Hi guys, I faced an issue when studying the spatial mapping examples.

Hardware
Intel Core i7-4810MQ
16G RAM
GeForce GTX 765M 2GB

Software
Windows 10 1709
Visual Studio 2017.5
CUDA 9.0.176
CMAKE 3.10.0
PCL 1.8.1

Result
When executing the line mesh.save("mesh.obj");, the application crashed and throwed std::length_error.

Initial Analysis
Debug and find that explicit vector(_CRT_GUARDOVERFLOW const size_type _Count, const _Alloc& _Al = _Alloc()) was called with _Count equal to 14757395255531667456 first then 0, and the application crashed.

Thank you very much for your reading and replying.

ErrorCode: Calibration File Not Available while using Zedfu App

Hello,
I have installed new sdk v2, just curious about spatial mapping app within zedfu. I have already calibrated Zed after installation, rather my calibration file exists within following directory "C:\Users\user\AppData\Roaming\Stereolabs\settings\SN1899".
But when I tried accessing this app for live as well as offline mode I am getting following error message(Attached snapshot).
Please help. Many thanks in advance.!
zedfu_error

SVO_Recording does not convert .svo to .avi or .png

For some reason, it doesn't convert an input .svo video to a .avi video or .png image files. It writes out a few .png images but they are all black.

Is it because the ZED SDK wasn't compiled correctly?

What is the unit of the EXPOSURE?

I want to control the exact exposure time by setting the sl::zed::ZED_EXPOSURE value (SDK v1.1) while the file says that:

ZED_EXPOSURE: Defines the exposure control. A -1 value enable the AutoExposure/AutoGain control. Affected value should be between 0 and 100 for manual control. A 0 value only disable auto mode without modifing the last auto values, while a 1 to 100 value disable auto mode and set
exposure to chosen value

What is the unit of the this value?

THX!

Cmakelist.txt cannot be found

The source directory /"usr/local/zed/sample" does not appear to contain CMakeLists.txt.

I tried moving the Cmakelist from depth sensing to the source directory but it doesn't work.

Help please :((

setCameraSettings only affect the left camera?

In Linux, sl::setCameraSettings() seems to only affect the left camera? Have tried this in my own code as well as sample/camera_control/ , where I changed VIEW_LEFT to VIEW_RIGHT for zed.retrieveImage().

Questionable ZED accuracy?

I've noticed some depth issues with my ZEDs, which had abysmal depth errors with the factory calibration, i.e. sensing 12 m when the real depth was 25 m.

To test the depth, we used a planar and highly textured surface and moved it away from the camera 50 times (1m to 25m), saving the measurements via SVOs (720p mode). On the ZED, we mounted a small laser rangefinder which looked in the same direction. Then, I ran through every SVO file and chose the same pixel, whose ray hit the target every frame (close to the red laser dot). The measurement is the mean of all disparities during the SVO sequence, which would help the accuracy greatly. Then I used a manual calibration file to improve the results, which are plotted in the image below. I also ran ELAS on the rectified images using the rectified intrinsics to test whether your algorithm is just wrong. It does not seem that way:

test_zed

Using ULTRA mode, no self calib.

Is there any way to improve the depth accuracy? I mean the depth error as e_z = z^2/(B*f)*e_m with z being the distance, B the baseline, f the hor. focal length and e_m the disparity (matching) error of your algorithm would yield 25.0m^2/(0.12m*670px)*0.5px = 3.89m, which is on point for ELAS. But I would assume that the ZED would fluctuate around the laser ground truth and not be systematically off, i.e. biased.

What is the absolute best way to calibrate the camera?

Also, why was the factory calibration so bad?

The code do not work,why?

cv::gpu::GpuMat inputDepthMat_GPU, inputColorMat_GPU; inputDepthMat_GPU.create(cv::Size(inputDepthMat_ZED.getWidth(), inputDepthMat_ZED.getHeight()), CV_8UC4); size_t pitch; cudaMallocPitch((void**)inputDepthMat_GPU.data, &pitch, inputDepthMat_GPU.cols*sizeof(uchar), inputDepthMat_GPU.rows); cudaMemcpy2D(inputDepthMat_GPU.data, pitch, inputDepthMat_ZED.getPtr<sl::uchar4>(sl::MEM_GPU), inputDepthMat_ZED.getStepBytes(sl::MEM_GPU), inputDepthMat_ZED.getWidth()*sizeof(sl::uchar4), inputDepthMat_ZED.getHeight(), cudaMemcpyDeviceToDevice);

focal length in mm

Hi,

I need to convert the focal length, fx/fy, from pixels to mm. Can someone help me with this?

I believe the formula is something like this:
focal_in_pixels = (focal_in_mm / sensor_width_in_mm) * image_width_in_pixels

Is this correct to make this conversion? What are the values for sensor_width? The image width is just resolution_width or resolution_width/2? Any help is appreciated.

Error running inside std::thread when window-less

[Ubuntu/Jetson TX1] I'm writing a positional tracking logger, so I've modified the example to allow running from commandline with no TrackingViewer window. However, when running inside a std::thread, I get several errors. If, however, I run the run(); loop normally (not inside std::thread), all is well. (The only changes I made are logging the Pose to a file stream, and a command line argument to toggle window mode). Below are the errors I get when running std::thread(run) windowless :

ZED (Init) >> Depth mode: Performance
ZED (Init) >> Video mode: VGA@60

in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
ZED (Mat) >> WARNING: DispResizer:credibilityMap Mat with GPU memory allocated should be freed before deleting the Camera object to avoid GPU context issues.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
ZED (Mat) >> WARNING: DispResizer:depthResized Mat with GPU memory allocated should be freed before deleting the Camera object to avoid GPU context issues.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
ZED (Mat) >> WARNING: Rectifier:MxRight Mat with GPU memory allocated should be freed before deleting the Camera object to avoid GPU context issues.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
ZED (Mat) >> WARNING: Rectifier:MyRight Mat with GPU memory allocated should be freed before deleting the Camera object to avoid GPU context issues.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
ZED (Mat) >> WARNING: Rectifier:MxLeft Mat with GPU memory allocated should be freed before deleting the Camera object to avoid GPU context issues.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
ZED (Mat) >> WARNING: Rectifier:MyLeft Mat with GPU memory allocated should be freed before deleting the Camera object to avoid GPU context issues.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
ZED (Mat) >> WARNING: in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in void sl::Mat::free(sl::MEM) : cuda error [29]: driver shutting down.
in cudaError deleteGPU(sl::MEM, sl::uchar1*) : cuda error [29]: driver shutting down.
terminate called without an active exception
Aborted

I have a bool Xwin that determines whether TrackingViewer Viewer is initialized and used or not. If Xwin = false (default), then the viewer window is not initialized or used. However, these lines cause the above errors in that situation:
zed_callback = std::thread(run); [inside void startZED()]

If I call run() normally inside startZED() when windowless, its fine. By Windowless, I mean I have a command line argument of "-w" that toggles a bool Xwin = true, otherwise Xwin = false (by default). Then, for the following and related lines I do like so:
if(Xwin) viewer.init(); [inside int main()]
. . .
if(Xwin) viewer.updateZEDPosition(camera_pose.pose_data); [inside void run()]
. . . and so on.

So, basically, if viewer is never used then std::thread(run); fails.

broken installer

Prior to running installer, there was no /usr/local/zed folder.

./ZED_SDK_Linux_Ubuntu16_v2.0.1.run
Verifying archive integrity... All good.
Uncompressing 'ZED camera SDK by Stereolabs' 100%
To continue you have to accept the EULA. Accept (Y/N) ?
Installing...
Installation path: /usr/local/zed
Checking CUDA version...
OK: Found CUDA 8.0
Do you want to auto-install dependencies (recommended) ? following packet will be installed via apt-get : libqt5sql5-mysql libqt5svg5 libqt5gui5 libqt5widgets5 libqt5opengl5 unixodbc-dev libpq5 libsybdb5 libglew-dev ttf-mscorefonts-installer libeigen3-dev freeglut3-dev libpng12-dev libboost-all-dev libturbojpeg libjpeg-turbo8 curl (Y/N) ?
Auto-installing Tools dependencies
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package ttf-mscorefonts-installer is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'ttf-mscorefonts-installer' has no installation candidate
cp: cannot stat '/usr/local/zed/tools': Permission denied
mkdir: cannot create directory '/usr/local/zed': Permission denied
mkdir: cannot create directory '/usr/local/zed': Permission denied
cp: failed to access '/usr/local/zed/lib/': Permission denied
cp: failed to access '/usr/local/zed/include/': Permission denied
cp: cannot stat '/usr/local/zed/zed-config-version.cmake': Permission denied
cp: cannot stat '/usr/local/zed/zed-config.cmake': Permission denied
Install samples (recommended) (Y/N) ?
Installation path: /usr/local/zed/sample/
mkdir: cannot create directory '/usr/local/zed': Permission denied
cp: failed to access '/usr/local/zed/sample//': Permission denied
mkdir: cannot create directory '/usr/local/zed': Permission denied
cp: failed to access '/usr/local/zed/plugins/': Permission denied
mkdir: cannot create directory '/usr/local/zed': Permission denied
mkdir: cannot create directory '/usr/local/zed': Permission denied
cp: failed to access '/usr/local/zed/firmware/': Permission denied
cp: cannot stat '/usr/local/zed/doc': Permission denied
It appears that no graphical sessions are running, this is known to cause issues with the ZED SDK
ZED SDK installation complete !
developer@blastoise:~/code> sudo ls /usr/local/zed -alh
total 8.0K
drwx------ 2 root root 4.0K Jul 2 17:15 .
drwxr-xr-x 64 root root 4.0K Jul 2 17:15 ..

ZED reopening problem

Hi,
I'm using ZED camera and need to reopen it during program execution (to change resolution, etc.).
The problem is that the GPU memory allocated after ZED camera opened becomes invalid after ZED closed.
So, for example, the next code will cause an OpenCV error
"OpenCV Error: Gpu API call (invalid argument) in cv::cuda::GpuMat::download, file C:/opencv/sources/modules/core/src/cuda/gpu_mat.cu, line 249"

sl::Camera zed;
zed.open(...);
cv::cuda::GpuMat gmat(...);
zed.close();

cv::cuda::GpuMat gmat1;
gmat.copyTo(gmat1);
or
cv::Mat mat;
gmat.download(mat);

As I understand this is because ZED creates its own CUDA context, which becomes invalid after reopening.
One workaround is to release all cv::cuda::GpuMats after closing ZED camera, but it's veeery inconvenient, since the program can have tons of them spread all over the program.
Is there an easier way?
What is the need for ZED to create its own CUDA context?

svo-recording sample errors

Using 3ef0e7d or ZED_SDK_WinSetup_v2.1.0_RC02.exe from support

svo-recording hangs after writing 224 frames (out of 1102) of image sequence

Exporting AVI of same file completes but video speed incorrect - says 30fps but only 18secs duration - too fast. The AVI plays in VLC but Premiere and Media Encoder complain about corrupt file

Which algorithm is used in positional tracking example ??

Hi, I am currently testing the performance of positional tracking example in this repository.
It really works well!! even though sometimes there are "jumps" in the estimated trajectory.

My question is, what kind of VO algorithm is used in this position tracking example ??
Is it feature-based or direct method with estimated depth image stream ?
It is interesting that there is no (very small) drift error when the ZED camera is stationary.
Is there any related VO paper ?? It is hard to see any related information of position tracking example.
Could you open some information of the VO algorithm used in position tracking ?

Depth Sensing only for red object

I am using ZED camera and OpenCV 3.1.0 ( C++ ) with Visual Studio 2015 to measure the depth.
I want to measure the depth by detecting the red object but I am facing difficulty in detecting the red object and measuring depth. Can you help me with this ?

VS2015 LINK ERROR

hi, I am trying to test the example code(hello ZED) ,but I get a link error after generating the project,
my environment is windows 10, VS2015, here is the error:

main.obj : error LNK2019: Unresolved external symbols "public: __thiscall sl::String::String(void)" (??0String@sl@@QAE@XZ),The symbol is referenced in the function _main

multiple ZEDs looking at same object - merge point cloud - configuring camera view

I have recorded multiple SVOs of the same object placed at the center of the field-of-view from 0,90,180 and 270 degrees. I wish to merge the 4 point cloud data together.

3d_0
3d_90
3d_180
3d_270

I saw a reference to Rotation class but it seems to be for positional mapping.

How to configure the two cameras to render to the same 3D view?
Also, How to set the x,y,z coordinates of multiple cameras in a given 3d space?

Can Zed run with CUDA 9.1?

I installed CUDA 9.1 and it always shows me that i need to install cuda 9.0 or missing CUDA in the environment variable.

issue trying to use zed with jetson tx1

Hi,

We tried to run the Zed Explorer and we getting the Error:

QXcbConnection: XCB error: 145 (Unknown), sequence: 164, resource id: 0, major code: 139 (Unknown), minor code: 20
Segmentation fault

( We using MobaXterm for ssh-ing)
the same error is receiving also for zedFu, zed Depth view. zed calibration is fine ( we calibrated the camera...) .

ZED_Diagnostic_log.txt

the Diagnostic output :

Running ZED SDK Components Diagnostic : OK

Running hardware Diagnostic : OK

Running cuda Diagnostic : OK

Running usb Diagnostic : OK

Running zed Diagnostic : Failed
Error:
Can't initialize the camera with all resolutions/fps. Check your USB connection.
I attached the log.

some details about the setup:

  • 16.04.3 LTS (GNU/Linux 4.4.38-tegra aarch64)
  • Cuda 8
  • ZED_SDK_Linux_JTX1_v2.2.1

can you help us please?

thanks,
Gal.

Crop the frame of an already recorded video

Hey, so I have recorded a few videos with the ZED cameras. Due to the space problem, I had to record them with one object in the view which I do not want to be in the video. I would like to crop that part from the frame which is at the bottom(maybe 80 pixels heightwise) before converting it to get the depth map. Is there a way I can do this ?

make error with depth example

Hi,

I am getting this error when compiling with the new samples:

/usr/local/zed/sample/zed-examples/depth sensing/build$ make
Scanning dependencies of target ZED_Depth_Sensing
[ 33%] Building CXX object CMakeFiles/ZED_Depth_Sensing.dir/src/main.o
[ 66%] Building CXX object CMakeFiles/ZED_Depth_Sensing.dir/src/GLViewer.o
make[2]: *** No rule to make target '/usr/local/zed/lib/libcudpp.so', needed by 'ZED_Depth_Sensing'. Stop.
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/ZED_Depth_Sensing.dir/all' failed
make[1]: *** [CMakeFiles/ZED_Depth_Sensing.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
`
Can anyone help me figure out what is wrong?

zed- camera control / opencv

So I was wondering is the use of an opencv Mat the standard way of capturing the ZED stream, or is it also possible from a normal USB path/stream? Does zed - explorer (in the tools) use opencv to display the camera capture?

Documentation wrong

Re commit 893688b

./ZED_SVO_Recording -f="./mysvo.svo" -v="./mysvo_converted.avi" -z

Doco says -v but exe output says use -o for output

Neither avi or sequence exporting working. Empty files generated

ZED explorer for Ubuntu?

The ZED explorer has some utilities which are nice, like recording lossless video at different resolutions. While I guess this is possible by coding, I wonder if there is something similar in Ubuntu, as the svo recorder does not provide such options.

Where sl_zed / Camera.hpp is located?

Hey ,guys.
When I tried to compile the code in tutorial, the head file "sl_zed/Camera.hpp" cannot be found.
So I want to know where I can find this header file, or do I need to create another environment?

Multi-camera support for Windows

Hello,

API of InitParameters -- int camera_linux_id
"Currently not available for Windows"

For my application it would be really useful to use 2 or more ZED cameras under Windows. Most VR and AR devices are Windows-only, which means I need a Ubuntu machine to record my videos and a Windows machine for the display, which introduces delay. I implore you to give us an update - is there still hope or did you abandon this feature completely?

Your mixed reality usefulness may be enhanced with more cameras.

Can ZED do SLAM?

Can ZED do SLAM? If so, what algorithm is used? Is IMU used?
Thank you!

drop in frames in real time mode (retrieveDepth())

Hey,
so I am calling the retriveMeasure() after the zed Grab() function to get the depth from the camera in the real time mode. But so many frames are being dropped without being processed. For example around 70 million frames were dropped when only 2000 frames were processed. I tried with svo_real_time_mode = true/false both. But got similar results. Is there a way I can fix this problem ?

change mode to fill

I am trying to get the depth map video in Fill mode. As explained in the documentation, I use
: sl::RuntimeParameters runtime_parameters; runtime_parameters.sensing_mode = sl::SENSING_MODE::SENSING_MODE_FILL;

but it's not really working.
What am I missing here ?

Multi-Camera (6 needed)

Hello, I am trying to use 6 cameras for take the video recording at the same time (synchronized).

Since it is only available for using 4 cameras for the same time, are there any ways to synchronize all 6 cameras?
(Suppose we put 2 laptops and 3 ZED cameras for each laptop, how can we synchronize those video recording ?)

Changing the depth quality of camera.

I am running the depth sensing tutorial. What parameters should I use to change depth quality of the camera. Because I am just capturing a flat wall and even at different distances the wall looks too curvy with descent amount of depth error easily visible on the point cloud. I don't know if its the right platform to ask but I would appreciate if anyone can answer this?

cmake / makefile

Is there a sample where we can include ZED libraries in a simple makefile instead of using cmake? I am a building a makefile and I am trying to include the zed libraries, but I get 'not found' errors:

EXTERNAL_CFLAGS += $(shell pkg-config --cflags zed)
EXTERNAL_LIBS += $(shell pkg-config --libs zed)

error: ‘slMat2cvMat’ was not declared in this scope

I'm trying to build the svo_recording/export and playback from the sample directory, but I get the following error: ‘slMat2cvMat’ was not declared in this scope
The other samples works just fine.

(cv)  /usr/local/zed/sample/svo recording/export  mkdir build && cd build && cmake .. && make
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found CUDA: /usr/local/cuda (found suitable exact version "8.0") 
-- Found OpenCV: /usr/local (found version "3.2.0") 
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/zed/sample/svo recording/export/build
Scanning dependencies of target ZED_SVO_Export
[ 50%] Building CXX object CMakeFiles/ZED_SVO_Export.dir/src/main.o
/usr/local/zed/sample/svo recording/export/src/main.cpp: In function ‘int main(int, char**)’:
/usr/local/zed/sample/svo recording/export/src/main.cpp:83:52: error: ‘slMat2cvMat’ was not declared in this scope
     cv::Mat left_image_ocv = slMat2cvMat(left_image);
                                                    ^
CMakeFiles/ZED_SVO_Export.dir/build.make:62: recipe for target 'CMakeFiles/ZED_SVO_Export.dir/src/main.o' failed
make[2]: *** [CMakeFiles/ZED_SVO_Export.dir/src/main.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/ZED_SVO_Export.dir/all' failed
make[1]: *** [CMakeFiles/ZED_SVO_Export.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

(cv)  /usr/local/zed/sample/svo recording/playback  mkdir build && cd build && cmake .. && make
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found CUDA: /usr/local/cuda (found suitable exact version "8.0") 
-- Found OpenCV: /usr/local (found version "3.2.0") 
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/zed/sample/svo recording/playback/build
Scanning dependencies of target ZED_SVO_Playback
[ 50%] Building CXX object CMakeFiles/ZED_SVO_Playback.dir/src/main.o
/usr/local/zed/sample/svo recording/playback/src/main.cpp: In function ‘int main(int, char**)’:
/usr/local/zed/sample/svo recording/playback/src/main.cpp:64:50: error: ‘slMat2cvMat’ was not declared in this scope
     cv::Mat svo_image_ocv = slMat2cvMat(svo_image);
                                                  ^
CMakeFiles/ZED_SVO_Playback.dir/build.make:62: recipe for target 'CMakeFiles/ZED_SVO_Playback.dir/src/main.o' failed
make[2]: *** [CMakeFiles/ZED_SVO_Playback.dir/src/main.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/ZED_SVO_Playback.dir/all' failed
make[1]: *** [CMakeFiles/ZED_SVO_Playback.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

libpng error when converting or playing pack .svo file

Hi, Im currently stressed out because some important footage turned out to be incomplete and useless. I was recording using the svo recorder and saving everything to a memstick. When I run the svo file later I get several of these messages:
libpng error: Not a PNG file
libpng error: Not a PNG file
libpng error: Not a PNG file
libpng error: Not a PNG file

When I convert the file I just get 6 messages on a 40s video, and running the svo file with the ros wrapper gives me a constant stream of the messages. It looks like the file gets corrupted or something. Im using the TX1 and starting/stopping the recording through ssh (not stable connection, loosing connection when I go underwater). The memstick is connected to a usb2 port and Im recording in 720p.

Timer

How to add timer and delay in ZED example code? Because when I am writing simple code, I am getting error.
Please help me with this.

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.