#include #include #include #include #ifdef SYSTEM_AGX #include "opencv2/imgcodecs/legacy/constants_c.h" #include #endif #ifdef Q_OS_WIN #include "opencv2/imgcodecs/legacy/constants_c.h" #include #endif #include #include "modulecomm.h" #include "rawpic.pb.h" #include "xmlparam.h" #include "ivversion.h" #include "ivbacktrace.h" int gnpicquuality = 60; int gnwidth = 640; int gnheight = 360; std::string gstrmem_input; std::string gstrmem_output; void * gpainput; void * gpaoutput; void Listenpic(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname) { if(nSize<1000)return; iv::vision::rawpic pic; if(false == pic.ParseFromArray(strdata,nSize)) { std::cout<<"picview Listenpic fail."< buff(pic.picdata().data(),pic.picdata().data()+pic.picdata().size()); mat = cv::imdecode(buff,CV_LOAD_IMAGE_COLOR); } std::vector param = std::vector(2); param[0] = CV_IMWRITE_JPEG_QUALITY; param[1] = gnpicquuality; // default(95) 0-100 std::vector buff; cv::Mat mat1; cv::resize(mat,mat1,cv::Size(gnwidth,gnheight)); iv::vision::rawpic outpic; cv::imencode(".jpg", mat1, buff, param); outpic.set_picdata(buff.data(),buff.size()); buff.clear(); outpic.set_type(2); outpic.set_time(pic.time()); outpic.set_index(pic.index()); outpic.set_elemsize(mat1.elemSize()); outpic.set_width(mat1.cols); outpic.set_height(mat1.rows); int ndatasize = outpic.ByteSize(); std::cout<