123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- #include "config.h"
- #include <iostream>
- #define VNAME(value) (#value)
- namespace graft_cv{
- CGCvConfig::CGCvConfig()
- :m_cparam(0)
- {
- };
- CGCvConfig::~CGCvConfig()
- {
- };
- void CGCvConfig::setConfParam(ConfigParam*cp)
- {
- m_cparam = cp;
- }
- void CGCvConfig::write(cv::FileStorage &fs)const{
- assert(m_cparam!=0);
- fs << "{"
- << "image_show" << m_cparam->image_show
- << "image_return" << m_cparam->image_return
- << "image_save" << m_cparam->image_save
- << "image_depository" << m_cparam->image_depository
- << "image_backup_days" << m_cparam->image_backup_days
- << "rs_grab_xmin" << m_cparam->rs_grab_xmin
- << "rs_grab_xmax" << m_cparam->rs_grab_xmax
- << "rs_grab_ymin" << m_cparam->rs_grab_ymin
- << "rs_grab_ymax" << m_cparam->rs_grab_ymax
- << "rs_grab_zmin" << m_cparam->rs_grab_zmin
- << "rs_grab_zmax" << m_cparam->rs_grab_zmax
- << "rs_grab_stem_diameter" << m_cparam->rs_grab_stem_diameter
- << "rs_grab_seedling_dist" << m_cparam->rs_grab_seedling_dist
- << "rs_grab_stem_min_pts" << m_cparam->rs_grab_stem_min_pts
- << "rs_grab_seedling_min_pts" << m_cparam->rs_grab_seedling_min_pts
- << "rs_grab_ror_ratio" << m_cparam->rs_grab_ror_ratio
- << "rs_grab_fork_ratio" << m_cparam->rs_grab_fork_ratio
- << "rs_grab_offset" << m_cparam->rs_grab_offset
- << "rs_grab_fork_yup" << m_cparam->rs_grab_fork_yup
- << "rs_grab_fork_ybt" << m_cparam->rs_grab_fork_ybt
- << "rs_grab_offset_cut" << m_cparam->rs_grab_offset_cut
- << "rs_grab_fork_height" << m_cparam->rs_grab_fork_height
- << "rs_grab_holes_number" << m_cparam->rs_grab_holes_number
- << "sc_grab_xmin" << m_cparam->sc_grab_xmin
- << "sc_grab_xmax" << m_cparam->sc_grab_xmax
- << "sc_grab_ymin" << m_cparam->sc_grab_ymin
- << "sc_grab_ymax" << m_cparam->sc_grab_ymax
- << "sc_grab_zmin" << m_cparam->sc_grab_zmin
- << "sc_grab_zmax" << m_cparam->sc_grab_zmax
- << "sc_grab_stem_diameter" << m_cparam->sc_grab_stem_diameter
- << "sc_grab_seedling_dist" << m_cparam->sc_grab_seedling_dist
- << "sc_grab_stem_min_pts" << m_cparam->sc_grab_stem_min_pts
- << "sc_grab_seedling_min_pts" << m_cparam->sc_grab_seedling_min_pts
- << "sc_grab_ror_ratio" << m_cparam->sc_grab_ror_ratio
- << "sc_grab_fork_ratio" << m_cparam->sc_grab_fork_ratio
- << "sc_grab_offset_nofork" << m_cparam->sc_grab_offset_nofork
- << "sc_grab_offset_bt" << m_cparam->sc_grab_offset_bt
- << "sc_grab_offset_up" << m_cparam->sc_grab_offset_up
- << "sc_grab_offset_normal" << m_cparam->sc_grab_offset_normal
- << "sc_grab_fork_yup" << m_cparam->sc_grab_fork_yup
- << "sc_grab_fork_ybt" << m_cparam->sc_grab_fork_ybt
- << "sc_grab_offset_cut" <<m_cparam->sc_grab_offset_cut
- << "sc_grab_fork_height" << m_cparam->sc_grab_fork_height
- << "sc_grab_holes_number" << m_cparam->sc_grab_holes_number
- << "}";
- };
- void CGCvConfig::read(const cv::FileNode& node){ //Read serialization for this class
- assert(m_cparam!=0);
- m_cparam->image_show = (bool)(int)node["image_show"];
- m_cparam->image_return = (bool)(int)node["image_return"];
-
- m_cparam->image_save = (bool)(int)node["image_save"];
- m_cparam->image_depository =(string)node["image_depository"];
- m_cparam->image_backup_days = (int)node["image_backup_days"];
- m_cparam->rs_grab_xmin = (double)node["rs_grab_xmin"];
- m_cparam->rs_grab_xmax = (double)node["rs_grab_xmax"];
- m_cparam->rs_grab_ymin = (double)node["rs_grab_ymin"];
- m_cparam->rs_grab_ymax = (double)node["rs_grab_ymax"];
- m_cparam->rs_grab_zmin = (double)node["rs_grab_zmin"];
- m_cparam->rs_grab_zmax = (double)node["rs_grab_zmax"];
- m_cparam->rs_grab_stem_diameter = (double)node["rs_grab_stem_diameter"];
- m_cparam->rs_grab_seedling_dist = (double)node["rs_grab_seedling_dist"];
- m_cparam->rs_grab_stem_min_pts = (int)node["rs_grab_stem_min_pts"];
- m_cparam->rs_grab_seedling_min_pts = (int)node["rs_grab_seedling_min_pts"];
- m_cparam->rs_grab_ror_ratio = (double)node["rs_grab_ror_ratio"];
- m_cparam->rs_grab_fork_ratio = (double)node["rs_grab_fork_ratio"];
- m_cparam->rs_grab_offset = (double)node["rs_grab_offset"];
- m_cparam->rs_grab_fork_yup = (double)node["rs_grab_fork_yup"];
- m_cparam->rs_grab_fork_ybt = (double)node["rs_grab_fork_ybt"];
- m_cparam->rs_grab_offset_cut = (double)node["rs_grab_offset_cut"];
- m_cparam->rs_grab_fork_height = (double)node["rs_grab_fork_height"];
- m_cparam->rs_grab_holes_number = (int)node["rs_grab_holes_number"];
- m_cparam->sc_grab_xmin = (double)node["sc_grab_xmin"];
- m_cparam->sc_grab_xmax = (double)node["sc_grab_xmax"];
- m_cparam->sc_grab_ymin = (double)node["sc_grab_ymin"];
- m_cparam->sc_grab_ymax = (double)node["sc_grab_ymax"];
- m_cparam->sc_grab_zmin = (double)node["sc_grab_zmin"];
- m_cparam->sc_grab_zmax = (double)node["sc_grab_zmax"];
- m_cparam->sc_grab_stem_diameter = (double)node["sc_grab_stem_diameter"];
- m_cparam->sc_grab_seedling_dist = (double)node["sc_grab_seedling_dist"];
- m_cparam->sc_grab_stem_min_pts = (int)node["sc_grab_stem_min_pts"];
- m_cparam->sc_grab_seedling_min_pts = (int)node["sc_grab_seedling_min_pts"];
- m_cparam->sc_grab_ror_ratio = (double)node["sc_grab_ror_ratio"];
- m_cparam->sc_grab_fork_ratio = (double)node["sc_grab_fork_ratio"];
- m_cparam->sc_grab_offset_nofork = (double)node["sc_grab_offset_nofork"];
- m_cparam->sc_grab_offset_bt = (double)node["sc_grab_offset_bt"];
- m_cparam->sc_grab_offset_up = (double)node["sc_grab_offset_up"];
- m_cparam->sc_grab_offset_normal = (double)node["sc_grab_offset_normal"];
- m_cparam->sc_grab_fork_yup = (double)node["sc_grab_fork_yup"];
- m_cparam->sc_grab_fork_ybt = (double)node["sc_grab_fork_ybt"];
- m_cparam->sc_grab_offset_cut = (double)node["sc_grab_offset_cut"];
- m_cparam->sc_grab_fork_height = (double)node["sc_grab_fork_height"];
- m_cparam->sc_grab_holes_number = (int)node["sc_grab_holes_number"];
- }
- string get_cparam_info(ConfigParam*m_cparam)
- {
- if(!m_cparam){return string("");}
- stringstream buff;
- buff << "{" << endl
- << "image_show:\t" << m_cparam->image_show << endl
- << "image_return:\t" << m_cparam->image_return << endl
- << "image_save:\t" << m_cparam->image_save << endl
- << "image_depository:\t" << m_cparam->image_depository << endl
- << "image_backup_days:\t" << m_cparam->image_backup_days << endl
-
- << "rs_grab_xmin:\t" << m_cparam->rs_grab_xmin << endl
- << "rs_grab_xmax:\t" << m_cparam->rs_grab_xmax << endl
- << "rs_grab_ymin:\t" << m_cparam->rs_grab_ymin << endl
- << "rs_grab_ymax:\t" << m_cparam->rs_grab_ymax << endl
- << "rs_grab_zmin:\t" << m_cparam->rs_grab_zmin << endl
- << "rs_grab_zmax:\t" << m_cparam->rs_grab_zmax << endl
- << "rs_grab_stem_diameter:\t" << m_cparam->rs_grab_stem_diameter << endl
- << "rs_grab_seedling_dist:\t" << m_cparam->rs_grab_seedling_dist << endl
- << "rs_grab_stem_min_pts:\t" << m_cparam->rs_grab_stem_min_pts << endl
- << "rs_grab_seedling_min_pts:\t" << m_cparam->rs_grab_seedling_min_pts << endl
- << "rs_grab_ror_ratio:\t" << m_cparam->rs_grab_ror_ratio << endl
- << "rs_grab_fork_ratio:\t" << m_cparam->rs_grab_fork_ratio << endl
- << "rs_grab_offset:\t" << m_cparam->rs_grab_offset << endl
- << "rs_grab_fork_yup:\t" << m_cparam->rs_grab_fork_yup << endl
- << "rs_grab_fork_ybt:\t" << m_cparam->rs_grab_fork_ybt << endl
- << "rs_grab_offset_cut:\t" << m_cparam->rs_grab_offset_cut<< endl
- << "rs_grab_fork_height:\t" << m_cparam->rs_grab_fork_height << endl
- << "rs_grab_holes_number:\t" << m_cparam->rs_grab_holes_number << endl
- << "sc_grab_xmin:\t" << m_cparam->sc_grab_xmin << endl
- << "sc_grab_xmax:\t" << m_cparam->sc_grab_xmax << endl
- << "sc_grab_ymin:\t" << m_cparam->sc_grab_ymin << endl
- << "sc_grab_ymax:\t" << m_cparam->sc_grab_ymax << endl
- << "sc_grab_zmin:\t" << m_cparam->sc_grab_zmin << endl
- << "sc_grab_zmax:\t" << m_cparam->sc_grab_zmax << endl
- << "sc_grab_stem_diameter:\t" << m_cparam->sc_grab_stem_diameter << endl
- << "sc_grab_seedling_dist:\t" << m_cparam->sc_grab_seedling_dist << endl
- << "sc_grab_stem_min_pts:\t" << m_cparam->sc_grab_stem_min_pts << endl
- << "sc_grab_seedling_min_pts:\t" << m_cparam->sc_grab_seedling_min_pts << endl
- << "sc_grab_ror_ratio:\t" << m_cparam->sc_grab_ror_ratio << endl
- << "sc_grab_fork_ratio:\t" << m_cparam->sc_grab_fork_ratio << endl
- << "sc_grab_offset_nofork:\t" << m_cparam->sc_grab_offset_nofork << endl
- << "sc_grab_offset_bt:\t" << m_cparam->sc_grab_offset_bt << endl
- << "sc_grab_offset_up:\t" << m_cparam->sc_grab_offset_up << endl
- << "sc_grab_offset_normal:\t" << m_cparam->sc_grab_offset_normal << endl
- << "sc_grab_fork_yup:\t" << m_cparam->sc_grab_fork_yup << endl
- << "sc_grab_fork_ybt:\t" << m_cparam->sc_grab_fork_ybt << endl
- << "sc_grab_offset_cut:\t" << m_cparam->sc_grab_offset_cut << endl
- << "sc_grab_fork_height:\t" << m_cparam->sc_grab_fork_height << endl
- << "sc_grab_holes_number:\t" << m_cparam->sc_grab_holes_number << endl
- << "}" << endl;
- return buff.str();
- }
- }
|