MCPcopy Create free account
hub / github.com/OpenPTrack/open_ptrack_v2 / toMsg

Method toMsg

tracking/src/track3d.cpp:586–621  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

584}
585
586void
587Track3D::toMsg(opt_msgs::Track3D& track_msg, bool vertical)
588{
589
590 double _x, _y, _z;
591 filter_->getState(_x, _y, _z);
592
593 track_msg.id = id_;
594 track_msg.x = _x;
595 track_msg.y = _y;
596 track_msg.z = _z;
597 track_msg.height = height_;
598 track_msg.distance = distance_;
599 track_msg.age = age_;
600 track_msg.confidence = - data_association_score_; // minus for transforming distance into a sort of confidence
601 track_msg.visibility = visibility_;
602
603 Eigen::Vector3d top(_x, _y, _z + (height_/2));
604 Eigen::Vector3d bottom(_x, _y, _z - (height_/2));
605 top = detection_source_->transformToCam(top);
606 bottom = detection_source_->transformToCam(bottom);
607 if (not vertical)
608 {
609 track_msg.box_2D.height = int(std::abs((top - bottom)(1)));
610 track_msg.box_2D.width = track_msg.box_2D.height / 2;
611 track_msg.box_2D.x = int(top(0)) - track_msg.box_2D.height / 4;
612 track_msg.box_2D.y = int(top(1));
613 }
614 else
615 {
616 track_msg.box_2D.width = int(std::abs((top - bottom)(0)));
617 track_msg.box_2D.height = track_msg.box_2D.width / 2;
618 track_msg.box_2D.x = int(top(0)) - track_msg.box_2D.width;
619 track_msg.box_2D.y = int(top(1)) - track_msg.box_2D.width / 4;
620 }
621}
622
623open_ptrack::detection::DetectionSource*
624Track3D::getDetectionSource()

Callers

nothing calls this directly

Calls 2

transformToCamMethod · 0.80
getStateMethod · 0.45

Tested by

no test coverage detected