Wiki

Only released in EOL distros:  

Overview

More information can be found here

Dependencies

ROS Nodes

calibrator

For the geometric calibration of both thermal-infrared cameras and regular cameras (both intrinsic and extrinsic).

Parameters

Dynamically Reconfigurable Parameters
See the dynamic_reconfigure package for details on dynamically reconfigurable parameters. ~alpha (double, default: 0.0) ~autoAlpha (bool, default: True) ~trackingMode (bool, default: False) ~flowThreshold (double, default: 0.0001) ~maxFrac (double, default: 0.05) ~errorThreshold (double, default: 0.0) ~stopCapturing (bool, default: False) ~contrastLeft (double, default: 1.0) ~brightnessLeft (double, default: 0.0) ~normLeft (bool, default: False) ~invertLeft (bool, default: False) ~contrastRight (double, default: 1.0) ~brightnessRight (double, default: 0.0) ~normRight (bool, default: False) ~invertRight (bool, default: False) ~adjustMSERLeft (bool, default: False) ~deltaLeft (int, default: 8) ~maxVarLeft (double, default: 0.25) ~minDivLeft (double, default: 0.2) ~areaThresholdLeft (double, default: 1.01) ~adjustMSERRight (bool, default: False) ~deltaRight (int, default: 8) ~maxVarRight (double, default: 0.25) ~minDivRight (double, default: 0.2) ~areaThresholdRight (double, default: 1.01)

Examples

For intrinsic calibration only:

$ roslaunch thermalvis calibrator_monoexample.launch

For stereo calibration:

$ roslaunch thermalvis calibrator_stereoexample.launch

streamer

For streaming from and controlling the Thermoteknix Miricle 110K and 307K cameras.

Parameters

Dynamically Reconfigurable Parameters
See the dynamic_reconfigure package for details on dynamically reconfigurable parameters. ~inputDatatype (int, default: 1) ~forceInputGray (bool, default: False) ~framerate (double, default: -1.0) ~normMode (int, default: 0) ~normFactor (double, default: 0.0) ~filterMode (int, default: 0) ~filterParam (double, default: 2.0) ~output16bit (bool, default: True) ~output8bit (bool, default: False) ~outputColor (bool, default: True) ~map (int, default: 0) ~extremes (bool, default: True) ~writeImages (bool, default: False) ~outputFormat (int, default: 4) ~outputType (int, default: 2) ~writeQuality (double, default: 1.0) ~keepOriginalNames (bool, default: True) ~loopMode (bool, default: False) ~undistortImages (bool, default: False) ~rectifyImages (bool, default: False) ~alpha (double, default: 0.0) ~autoAlpha (bool, default: True) ~temporalSmoothing (bool, default: False) ~maxShift (int, default: 2) ~temporalMemory (int, default: 5) ~removeDuplicates (bool, default: False) ~markDuplicates (bool, default: False) ~dumpDuplicates (bool, default: False) ~dumpTimestamps (bool, default: False) ~fusionFactor (double, default: 0.6) ~syncMode (int, default: 0) ~syncDiff (double, default: 0.005) ~readThermistor (bool, default: False) ~shutterPeriod (int, default: 10) ~serialPollingRate (double, default: 10.0) ~maxNucInterval (int, default: 45) ~maxNucThreshold (double, default: 0.2) ~maxThermistorDiff (double, default: 0.5) ~verboseMode (bool, default: False) ~drawReticle (bool, default: False)

Examples

Should act as a driver for a Thermoteknix Miricle 110K or 307K camera, allowing the reading of the thermistor, and control of camera settings, along with streaming in the raw 14-bit/pixel mode.

$ roslaunch thermalvis streamer_example.launch

flow

Highly configurable sparse optical flow for thermal-infrared video.

Parameters

Dynamically Reconfigurable Parameters
See the dynamic_reconfigure package for details on dynamically reconfigurable parameters. ~softSync (bool, default: False) ~syncDiff (double, default: 0.005) ~detector_1 (int, default: 1) ~sensitivity_1 (double, default: 0.1) ~detector_2 (int, default: 0) ~sensitivity_2 (double, default: 0.1) ~detector_3 (int, default: 0) ~sensitivity_3 (double, default: 0.1) ~maxFrac (double, default: 0.05) ~maxFeatures (int, default: 100) ~newDetectionFramecountTrigger (int, default: 10) ~maximumDetectionFeatures (int, default: 300) ~minDistance (double, default: 5.0) ~flowThreshold (double, default: 0.0001) ~minTrackedFeaturesPerDetector (int, default: 50) ~maxTrackedFeaturesPerDetector (int, default: 300) ~nearSearchHistory (int, default: 5) ~farSearchHistory (int, default: 48) ~delayTimeout (double, default: 2.0) ~maxProjectionsPerFeature (int, default: 10) ~minPointsForWarning (int, default: 16) ~drawingHistory (int, default: 10) ~debugMode (bool, default: True)

Examples

Should publish a customized tracks topic containing sparse optical flow information.

$ roslaunch thermalvis flow_example.launch

monoslam

Monocular SLAM with a hand-held thermal-infrared camera.

Parameters

Dynamically Reconfigurable Parameters
See the dynamic_reconfigure package for details on dynamically reconfigurable parameters. ~minStartupScore (double, default: 0.8) ~flowback (int, default: 3) ~keyframeSpacing (int, default: 5) ~maxKeyframeSeparation (int, default: 15) ~minKeyframeScore (double, default: 20.0) ~adjustmentFrames (int, default: 50) ~motionThreshold (double, default: 20.0) ~framesForTriangulation (int, default: 8) ~min3dPtsForPnP (int, default: 24) ~camerasPerSys (int, default: 10) ~minTrackedFeatures (int, default: 50) ~maxGuides (int, default: 5) ~minGeometryScore (double, default: 30.0) ~requiredTrackFrac (double, default: 0.8) ~dataTimeout (double, default: 5.0) ~initialStructureIterations (int, default: 1000) ~poseEstimateIterations (int, default: 10) ~fullSystemIterations (int, default: 10) ~keyframeIterations (int, default: 10) ~subsequenceIterations (int, default: 100) ~debugMode (bool, default: False) ~timeDebug (bool, default: False) ~timeSpacing (int, default: 5)

Examples

I recommend making sure that you have got the flow node working effectively before trying to run the monoslam node.

$ roslaunch thermalvis monoslam_example.launch

depth

Real-time depth from stereo from thermal-infrared video [in progress].

Parameters

Dynamically Reconfigurable Parameters
See the dynamic_reconfigure package for details on dynamically reconfigurable parameters. ~alpha (double, default: 0.0) ~autoAlpha (bool, default: True)

Examples

This should simply produce a depth map from two video streams.

$ roslaunch thermalvis depth_example.launch

listener

For processing 3D reconstruction datasets [in progress].

Parameters

Dynamically Reconfigurable Parameters
See the dynamic_reconfigure package for details on dynamically reconfigurable parameters. ~maxFrames (int, default: 10000)

Examples

This node requires a bag file to exist which contains relevant topics for 3D thermal mapping.

$ roslaunch thermalvis listener_example.launch

Wiki: thermalvis (last edited 2013-02-14 00:40:16 by StephenVidas)