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

Add RSSDK 2.0 (librealsense2) grabber #2214

Merged
Changes from 1 commit
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
22ef192
Implement RealSense2Grabber and related cmake config (initial commit)
daniel-packard Feb 12, 2018
3c4ac27
modify config for in_hand_scanner to use realsense2grabber
daniel-packard Feb 13, 2018
f3b47cf
realsense grabber with namespace, makelist fix
patrickabadi Feb 13, 2018
f5ced03
exports for realsense grabber
patrickabadi Feb 13, 2018
dfa2b7c
Update RS2_FORMAT_RGB8 for realsense color stream
daniel-packard Feb 13, 2018
b8513c4
Improve FindLibRealSense.cmake with better NAMES/PATHS/HINTS for find…
daniel-packard Feb 14, 2018
85974ad
merging grabber into branch
patrickabadi Feb 14, 2018
3c4c73c
Patch out crs-develop changes to in_hand_scanner
daniel-packard Feb 14, 2018
7df5e65
RealSense2Grabber updates
patrickabadi Feb 14, 2018
56754ee
realsense2grabber fixes
patrickabadi Feb 14, 2018
2d3bdc6
remove .gitignore
daniel-packard Feb 15, 2018
0179fba
realsense grabber code updates
patrickabadi Feb 15, 2018
2f7b7a2
Add LIBREALSENSE_ROOT env var to cmake config to match other 3rdParty…
daniel-packard Feb 15, 2018
bc7e82e
Separating constructors
patrickabadi Feb 16, 2018
2c42a0c
Improvement on getting rgb from texture
patrickabadi Feb 16, 2018
7be6219
Use existing librealsense cmake config files instead of rolling our own.
daniel-packard Feb 16, 2018
4cf198d
aFix references to realsense2 cmake variables
daniel-packard Feb 18, 2018
8575522
Remove duplicated #include
daniel-packard Feb 18, 2018
f147759
Use PCL style include guard
daniel-packard Feb 18, 2018
4709f1f
Update docstring to be more accurate
daniel-packard Feb 18, 2018
9e09119
allow for setDeviceOptions while running
patrickabadi Feb 19, 2018
3f25e56
Remove unnecessary call to add realsense2 include directories
daniel-packard Feb 19, 2018
313e5f5
Include pcl headers, remove unnecessary forward declarations of cloud…
daniel-packard Feb 19, 2018
792ff4d
Add cmake all-in-one installer support for realsense2
daniel-packard Feb 19, 2018
5e780b2
Better handling of profile types and factory method constructors
patrickabadi Feb 22, 2018
d294aff
updating constructors
patrickabadi Feb 22, 2018
5bc175b
Update prefix from realsense2_ to RSSDK2_ for RSSDK 2.0 (librealsense…
daniel-packard Mar 1, 2018
8cf1d7e
Fix cmake references for rssdk2 module
daniel-packard Mar 2, 2018
6b88599
code optimizations. More to come.
patrickabadi Mar 13, 2018
1bd2270
fix unsigned int
patrickabadi Mar 13, 2018
9c6d641
Code refactoring
patrickabadi Mar 14, 2018
1831099
Experimental templated function for converting point clouds
daniel-packard Mar 15, 2018
3f7a587
- templated function working
patrickabadi Mar 15, 2018
ebc9067
lambda function start
patrickabadi Mar 15, 2018
b8ffae8
new convert functions using template
patrickabadi Mar 15, 2018
75cf960
cleanup
patrickabadi Mar 15, 2018
1a5db1f
Implemented signalschanged and code refactoring
patrickabadi Mar 26, 2018
bddc3bb
repeat playback when reading from file
patrickabadi May 14, 2018
43756c3
spacing fixes
patrickabadi May 16, 2018
d8a8923
Minor fixes post rebase
daniel-packard Apr 13, 2019
c42a013
- Remove virtual keyword from Realsense2Grabber methods, and replace
daniel-packard Jun 10, 2019
4be44f1
Update io/include/pcl/io/real_sense_2_grabber.h
patrickabadi Jun 11, 2019
1528a3d
Update io/include/pcl/io/real_sense_2_grabber.h
patrickabadi Jun 11, 2019
ed9e09f
Updated stop to handle multiple calls. Added thread and pipe to stop…
patrickabadi Jun 11, 2019
312bc25
Add static qualifier to getTextureColor and getTextureIntensity
daniel-packard Jun 11, 2019
69ba109
Add RSSDK2_FOUND message, replace ifndef include guard with pragma once
daniel-packard Jun 12, 2019
65fc64d
Remove mutex lock. Not needed
patrickabadi Jun 13, 2019
131775c
exception to ensure proper stream format
patrickabadi Jun 13, 2019
b5a5e9c
Remove redundant closing if(XYZ) conditional text
daniel-packard Jun 13, 2019
36d3653
Remove forward declarations of rgb, ir, only create on needed
daniel-packard Jun 17, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Improve FindLibRealSense.cmake with better NAMES/PATHS/HINTS for find…
…_path and find_library
  • Loading branch information
daniel-packard committed Apr 13, 2019
commit b8513c428e34302708116f1e9a4825d570abe6ac
36 changes: 33 additions & 3 deletions cmake/Modules/FindLibRealSense.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,43 @@
find_package(PkgConfig QUIET)

# Include directories
find_path(LIBREALSENSE_INCLUDE_DIR librealsense2/rs.h)
find_path(LIBREALSENSE_INCLUDE_DIR librealsense2/rs.h
PATHS "$ENV{realsense2_DIR}"
"$ENV{PROGRAMW6432}/librealsense2" # for self built library
"$ENV{PROGRAMFILES}/librealsense2" # for self built library
"$ENV{PROGRAMFILES}/Intel RealSense SDK 2.0" # for pre built library
# "Please specify search paths for Linux and MacOS"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should it add "/usr/local/" and "/usr/" for Linux and MacOS?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems reasonable, and looking at libusb, these seem to be some of the standard hints on linux: https://github.com/PointCloudLibrary/pcl/blob/46cb8fe5589e88e36d79f9b8b8e5f4ff4fceb5de/cmake/Modules/Findlibusb-1.0.cmake

I'll do a quick review of the librealsense docs and see if they install to any of these paths by default on linux/mac

PATH_SUFFIXES include)

set(LIBREALSENSE_INCLUDE_DIRS ${LIBREALSENSE_INCLUDE_DIR})
mark_as_advanced(LIBREALSENSE_INCLUDE_DIRS)

# Libraries
find_library(LIBREALSENSE_LIBRARY NAMES librealsense.lib)
find_library(LIBREALSENSE_LIBRARY_DEBUG NAMES librealsense.lib)
set(LIBREALSENSE_RELEASE_NAME realsense2)
set(LIBREALSENSE_DEBUG_NAME realsense2_d)
Copy link
Contributor Author

@daniel-packard daniel-packard Feb 14, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Of course, you are right about the name of the libraries (librealsense.lib vs realsense2) 👍

I also liked your recommended update to include PATHS and PATH_SUFFIXES in the calls to find_path and find_library, so I've updated that as well. I don't know what appropriate values would be on linux/mac either -- hopefully a Linux/Mac user can comment with additional recommendations for those platforms


set(LIBREALSENSE_SUFFIX x86)
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(LIBREALSENSE_SUFFIX x64)
endif()

find_library(LIBREALSENSE_LIBRARY
NAMES ${LIBREALSENSE_RELEASE_NAME}
PATHS "$ENV{realsense2_DIR}"
"$ENV{PROGRAMW6432}/librealsense2"
"$ENV{PROGRAMFILES}/librealsense2"
"$ENV{PROGRAMFILES}/Intel RealSense SDK 2.0"
# "Please specify search paths for Linux and MacOS"
PATH_SUFFIXES lib lib/${LIBREALSENSE_SUFFIX})

find_library(LIBREALSENSE_LIBRARY_DEBUG
NAMES ${LIBREALSENSE_DEBUG_NAME}
PATHS "$ENV{realsense2_DIR}"
"$ENV{PROGRAMW6432}/librealsense2"
"$ENV{PROGRAMFILES}/librealsense2"
"$ENV{PROGRAMFILES}/Intel RealSense SDK 2.0"
# "Please specify search paths for Linux and MacOS"
PATH_SUFFIXES lib lib/${LIBREALSENSE_SUFFIX})

if(NOT LIBREALSENSE_LIBRARY_DEBUG)
set(LIBREALSENSE_LIBRARY_DEBUG ${LIBREALSENSE_LIBRARY})
Expand Down