Browse Source

change ui_ads_hmi for change Point2D to tracepoint.

HAPO 3 years ago
parent
commit
3178eb03b9

+ 2 - 0
src/decition/decition_brain_sf/decition/brain.cpp

@@ -789,6 +789,8 @@ void iv::decition::BrainDecition::run() {
                     decition_gps->wheel_angle = mpc_wheel;
                 }
             }
+
+            int ntpsize = sizeof(iv::TracePoint);
             iv::modulecomm::ModuleSendMsg(mpaPlanTrace,(char *)decitionGps00->planTrace.data(),decitionGps00->planTrace.size()*sizeof(iv::TracePoint));
 
             iv::modulecomm::ModuleSendMsg(mpaObsTraceLeft,(char *)(ServiceCarStatus.obsTraceLeft.data()),ServiceCarStatus.obsTraceLeft.size()*sizeof(iv::TracePoint));

+ 2 - 2
src/detection/detection_radar_delphi_esr_send/main.cpp

@@ -528,8 +528,8 @@ int main(int argc, char *argv[])
 
     iv::xmlparam::Xmlparam xp(strpath.toStdString());
 
-    std::string strmemcan = xp.GetParam("canrecv","canrecv1");
-    std::string strmemsend = xp.GetParam("cansend","cansend1");
+    std::string strmemcan = xp.GetParam("canrecv","canrecv0");
+    std::string strmemsend = xp.GetParam("cansend","cansend0");
     std::string strmemradar = xp.GetParam("radar","radar");
     std::string strmodulename = xp.GetParam("modulename","detection_radar_delphi_esr");
 #ifdef fujiankuan

+ 2 - 1
src/fusion/fusion_pointcloud_bus/lidarmerge.cpp

@@ -47,7 +47,8 @@ pcl::PointCloud<pcl::PointXYZI>::Ptr mergefunc(std::vector<iv::lidar_data> xvect
                 if(point.y>xvectorlidar[i].fmax_y)continue;
                 if(point.z>xvectorlidar[i].fmax_z)continue;
                 if(point.z > xvectorlidar[i].fignore_zmax) continue;
-//                std::cout<<"  fignore  zmax  "<<xvectorlidar[i].fignore_zmax<<std::endl;
+                if(point.z < xvectorlidar[i].fignore_zmin) continue;
+//                std::cout<<"  fignore  zmin  "<<xvectorlidar[i].fignore_zmin<<std::endl;
 
                 if(point.x<xvectorlidar[i].fmin_x)continue;
                 if(point.y<xvectorlidar[i].fmin_y)continue;

+ 1 - 0
src/fusion/fusion_pointcloud_bus/lidarmerge.h

@@ -25,6 +25,7 @@ struct lidar_data
     double fignore_xmin = 0;
     double fignore_ymin = 0;
     double fignore_zmax = 0;
+    double fignore_zmin = 0;
     pcl::PointCloud<pcl::PointXYZI>::Ptr mpoint_cloud = NULL;
     int64_t mupdatetime = 0;
     pcl::PointCloud<pcl::PointXYZI>::Ptr mpoint_cloud_old = NULL;

+ 7 - 0
src/fusion/fusion_pointcloud_bus/main.cpp

@@ -69,6 +69,7 @@ void dec_yaml(const char * stryamlpath)
     double fignore_xmin = 0;
     double fignore_ymin = 0;
     double fignore_zmax = 0;
+    double fignore_zmin = 0;
 
     if(config["ignore"]["xmin"])
     {
@@ -98,6 +99,11 @@ void dec_yaml(const char * stryamlpath)
         strtem = config["ignore"]["zmax"].as<std::string>();
         fignore_zmax = atof(strtem.data());
     }
+    if(config["ignore"]["zmin"])
+    {
+        strtem = config["ignore"]["zmin"].as<std::string>();
+        fignore_zmin = atof(strtem.data());
+    }
 
 
     for(i=0;i<nlidarsize;i++)
@@ -151,6 +157,7 @@ void dec_yaml(const char * stryamlpath)
                 xlidardata.fignore_xmin = fignore_xmin;
                 xlidardata.fignore_ymin = fignore_ymin;
                 xlidardata.fignore_zmax = fignore_zmax;
+                xlidardata.fignore_zmin = fignore_zmin;
 
 
                 strncpy(xlidardata.strmemname,strmemname.data(),255);

+ 2 - 1
src/fusion/lidar_radar_fusion/fusion.hpp

@@ -24,7 +24,7 @@ float ComputeDis(cv::Point2f po1, cv::Point2f po2)
 void Get_AssociationMat(LidarObject& lidar_object_vector,iv::radar::radarobjectarray& radar_object_array,
                         std::vector<match_index>& match_idx,std::vector<int>&radar_idx)
 {
-//    std::cout<<" is      ok     "<<std::endl;
+    std::cout<<"       begin     "<<std::endl;
     int nlidar = lidar_object_vector.size();
     int nradar = radar_object_array.obj_size();
     match_idx.clear();
@@ -81,6 +81,7 @@ void Get_AssociationMat(LidarObject& lidar_object_vector,iv::radar::radarobjecta
             radar_idx.push_back(k);
         }
     }
+    std::cout<<"      end     "<<std::endl;
 }
 
 void RLfusion(LidarObject& lidar_object_vector,iv::radar::radarobjectarray& radar_object_array, iv::fusion::fusionobjectarray& lidar_radar_fusion_object_array)

+ 3 - 2
src/fusion/lidar_radar_fusion_cnn/main.cpp

@@ -106,9 +106,10 @@ void datafusion(iv::lidar::objectarray& lidar_obj,iv::radar::radarobjectarray& r
 {
 //    gMutex.lock();
 //    Transformation::RadarPross(radarobjvec);
-    RLfusion(lidar_obj,radarobjvec,li_ra_fusion);
-
+//    RLfusion(lidar_obj,radarobjvec,li_ra_fusion);
+    li_ra_fusion.Clear();
     AddMobileye(li_ra_fusion,mobileye_info);
+    mobileye_info.clear_xobj();
 //    for(int i=0;i<li_ra_fusion.obj_size();i++)
 //    {
 //        std::cout<<"x    y      vx    vy   w "<<li_ra_fusion.obj(i).centroid().x()<<"          "

+ 10 - 10
src/ui/ui_ads_hmi/ADCIntelligentVehicle.cpp

@@ -973,7 +973,7 @@ void ADCIntelligentVehicle::paintEvent(QPaintEvent *)
         navigation_data = m_navigation_data;
         mMutexNavi.unlock();
 
-        std::vector<iv::Point2D> myplan,myplan_left,myplan_right;
+        std::vector<iv::TracePoint> myplan,myplan_left,myplan_right;
         mMutexPlan.lock();
         myplan = m_plan;
         mMutexPlan.unlock();
@@ -1502,12 +1502,12 @@ void ADCIntelligentVehicle::UpdatePlanTrace(const char * strdata,const unsigned
 {
     mMutexPlan.lock();
     m_plan.clear();
-    int nplansize = nSize/sizeof(iv::Point2D);
-    int npsize = sizeof(iv::Point2D);
+    int nplansize = nSize/sizeof(iv::TracePoint);
+    int npsize = sizeof(iv::TracePoint);
     int i;
     for(i=0;i<nplansize;i++)
     {
-        iv::Point2D x;
+        iv::TracePoint x;
         memcpy(&x,strdata + i*npsize,npsize);
         m_plan.push_back(x);
     }
@@ -1518,15 +1518,15 @@ void ADCIntelligentVehicle::UpdatePlanTrace_left(const char * strdata,const unsi
 {
     mMutexPlan_left.lock();
     m_plan_left.clear();
-    int nplansize = nSize/sizeof(iv::Point2D);
+    int nplansize = nSize/sizeof(iv::TracePoint);
     if(nplansize < 1)
         std::cout<<"UpdatePlanTrace_left size is 0................. "<<std::endl;
 //        return;
-    int npsize = sizeof(iv::Point2D);
+    int npsize = sizeof(iv::TracePoint);
     int i;
     for(i=0;i<nplansize;i++)
     {
-        iv::Point2D x;
+        iv::TracePoint x;
         memcpy(&x,strdata + i*npsize,npsize);
         m_plan_left.push_back(x);
     }
@@ -1537,14 +1537,14 @@ void ADCIntelligentVehicle::UpdatePlanTrace_right(const char * strdata,const uns
 {
     mMutexPlan_right.lock();
     m_plan_right.clear();
-    int nplansize = nSize/sizeof(iv::Point2D);
+    int nplansize = nSize/sizeof(iv::TracePoint);
     if(nplansize < 1)
         std::cout<<"UpdatePlanTrace_right size is 0................. "<<std::endl;
-    int npsize = sizeof(iv::Point2D);
+    int npsize = sizeof(iv::TracePoint);
     int i;
     for(i=0;i<nplansize;i++)
     {
-        iv::Point2D x;
+        iv::TracePoint x;
         memcpy(&x,strdata + i*npsize,npsize);
         m_plan_right.push_back(x);
     }

+ 3 - 1
src/ui/ui_ads_hmi/ADCIntelligentVehicle.h

@@ -50,6 +50,8 @@
 #include "common/obstacle_type.h"
 #include "common/constants.h"
 
+#include "../../../src/decition/common/common/tracepointstation.h"
+
 #include "modulecomm.h"
 
 #include <QMutex>
@@ -340,7 +342,7 @@ public:
     void UpdatePlanTrace(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname);
     void UpdatePlanTrace_left(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname);
     void UpdatePlanTrace_right(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname);
-    std::vector<iv::Point2D> m_plan,m_plan_left,m_plan_right;
+    std::vector<iv::TracePoint> m_plan,m_plan_left,m_plan_right;
     QMutex mMutexPlan,mMutexPlan_left,mMutexPlan_right;
 private:
     void * mpaplantrace;