Skip to content
Snippets Groups Projects

Implements #196 stream capturing

Merged Nicolas Pope requested to merge bug/196/snapshotcapture into master
Files
2
@@ -26,6 +26,17 @@ static void createDecoder(const ftl::codecs::Packet &pkt) {
decoder = ftl::codecs::allocateDecoder(pkt);
}
static void visualizeDepthMap( const cv::Mat &depth, cv::Mat &out,
const float max_depth)
{
depth.convertTo(out, CV_8U, 255.0f / max_depth);
out = 255 - out;
//cv::Mat mask = (depth >= 39.0f); // TODO (mask for invalid pixels)
applyColorMap(out, out, cv::COLORMAP_JET);
//out.setTo(cv::Scalar(255, 255, 255), mask);
}
int main(int argc, char **argv) {
std::string filename(argv[1]);
LOG(INFO) << "Playing: " << filename;
@@ -72,6 +83,9 @@ int main(int argc, char **argv) {
}
if (!frame.empty()) {
if (spkt.channel == 1) {
visualizeDepthMap(frame, frame, 8.0f);
}
double time = (double)(spkt.timestamp - r.getStartTime()) / 1000.0;
cv::putText(frame, std::string("Time: ") + std::to_string(time) + std::string("s"), cv::Point(10,20), cv::FONT_HERSHEY_PLAIN, 1, cv::Scalar(0,0,255));
cv::imshow("Player", frame);
Loading