in sensor_fusion_pkg/src/lidar_overlay.cpp [65:83]
void LidarOverlay::loadLidarOverlayCache(const std::bitset<8>& sectorLidarData){
auto overlay = cv::Mat(imageHeight_,
imageWidth_,
CV_8UC3,
LIDAR_OVERLAY_CONFIG_LIDAR_OVERLAY_BACKGROUND_COLOR);
int cacheKey = (int)(sectorLidarData.to_ulong());
if(lidarOverlayCache_.find(cacheKey) == lidarOverlayCache_.end()){
for(size_t sector_idx = 0; sector_idx < sectorLidarData.size(); sector_idx++){
if(sectorLidarData[sector_idx] && sector_idx < lidarOverlayConfiguration_[LIDAR_OVERLAY_CONFIG_LIDAR_OVERLAY_NUM_SECTORS_KEY]){
cv::fillPoly(overlay,
sectorCoordinatesMap_[sector_idx],
LIDAR_OVERLAY_CONFIG_LIDAR_OVERLAY_FILL_COLOR);
}
}
drawSectorSeparatorLinesOnImage(overlay);
lidarOverlayCache_[cacheKey] = overlay;
}
}