调整 因为G306 app导致 取图效率变低
This commit is contained in:
parent
0d2c7d79f7
commit
e7608d308d
|
@ -256,7 +256,7 @@ void hg_scanner_306::thread_handle_usb_read(void)
|
|||
break;
|
||||
}
|
||||
}
|
||||
this_thread::sleep_for(chrono::milliseconds(10));
|
||||
//this_thread::sleep_for(chrono::milliseconds(10));
|
||||
|
||||
if (SCANNER_ERR_DEVICE_NOT_FOUND == ret)
|
||||
{
|
||||
|
@ -538,6 +538,99 @@ int hg_scanner_306::get_img_data_7010()
|
|||
return ret;
|
||||
}
|
||||
}
|
||||
int hg_scanner_306::get_img_data_7010_test()
|
||||
{
|
||||
int ret = SCANNER_ERR_OK;
|
||||
|
||||
USBCB usb{ setting3288dsp::GET_IMAGE, 0, 0 };
|
||||
{
|
||||
setting3288dsp::HG_JpegCompressInfo info;
|
||||
StopWatch sw;
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(io_lock_);
|
||||
ret = writeusb(usb);
|
||||
|
||||
io_->set_timeout(1000);
|
||||
sw.reset();
|
||||
int len = sizeof(info);
|
||||
ret = io_->read_bulk(&info, &len);
|
||||
|
||||
//if (info.first_frame)
|
||||
//{
|
||||
// frame_length_ = info.DataLength;
|
||||
// frame_width_ = info.width;
|
||||
// frame_hegiht_ = info.height;
|
||||
// first_frame_total_ = info.index_frame;
|
||||
// jpgdata_.clear();
|
||||
// jpgdata_.resize(frame_width_ * frame_hegiht_ * first_frame_total_);
|
||||
// index_ = 0;
|
||||
//}
|
||||
if (info.last_frame)
|
||||
{
|
||||
//return 0;
|
||||
std::vector<unsigned char> data_;
|
||||
data_.resize(frame_length_);
|
||||
ret = io_->read_bulk(&data_[0], &frame_length_);
|
||||
}
|
||||
else
|
||||
{
|
||||
frame_length_ = info.DataLength;
|
||||
|
||||
std::vector<unsigned char> data_;
|
||||
data_.resize(frame_length_);
|
||||
ret = io_->read_bulk(&data_[0], &frame_length_);
|
||||
|
||||
//i++;
|
||||
//cv::ImreadModes rmc = cv::IMREAD_GRAYSCALE;
|
||||
//cv::Mat mat = cv::imdecode(data_, rmc);//color BGR
|
||||
//JpegDecode_.Put(mat,mat.cols * mat.rows);
|
||||
//cv::imwrite("C:\\image\\imdecode" + std::to_string(i) + ".jpg", mat);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (info.last_frame)
|
||||
{
|
||||
//return 0;
|
||||
if (info.error_code)
|
||||
{
|
||||
std::vector<unsigned char>().swap(jpgdata_); //回收空间 clear只能清空元素
|
||||
return 0;
|
||||
}
|
||||
//if (true)
|
||||
//{
|
||||
// cv::ImreadModes rmc = cv::IMREAD_GRAYSCALE;
|
||||
// cv::Mat mat = cv::imdecode(jpgdata_, rmc);//color BGR
|
||||
// cv::imwrite("C:\\image\\imdecode" + std::to_string(1) + ".jpg", mat);
|
||||
//}
|
||||
|
||||
|
||||
return 0;
|
||||
|
||||
int frame_ind = first_frame_total_ - last_frame_total_;
|
||||
if (frame_ind < 0)
|
||||
{
|
||||
frame_ind = 0;
|
||||
}
|
||||
|
||||
mat_width = frame_width_;
|
||||
mat_height = (frame_hegiht_ * first_frame_total_) - (frame_hegiht_ * frame_ind);
|
||||
std::shared_ptr<tiny_buffer> image_data_(aquire_memory(mat_width * mat_height));
|
||||
|
||||
unsigned int size1 = mat_height;
|
||||
void* l = image_data_->data(0, &size1);
|
||||
memcpy(l, jpgdata_.data(), mat_width * mat_height);
|
||||
|
||||
ret = save_usb_data(image_data_);
|
||||
index_ = 0;
|
||||
|
||||
std::vector<unsigned char>().swap(jpgdata_); //回收空间 clear只能清空元素
|
||||
|
||||
}
|
||||
float v = sw.elapsed_ms();
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
int hg_scanner_306::writedown_device_configuration(bool type,setting_hardware::HGSCANCONF_7010 *d)
|
||||
{
|
||||
if (!type)
|
||||
|
@ -576,7 +669,7 @@ int hg_scanner_306::writedown_device_configuration(bool type,setting_hardware::H
|
|||
VLOG_MINI_1(LOG_LEVEL_WARNING, "writedown_device_configuration is_quality_ is .(%d)\n", is_quality_)
|
||||
d->params_7010.dpi = 1;
|
||||
}
|
||||
if (image_prc_param_.bits.remove_morr && firmware_sup_morr_)
|
||||
if (image_prc_param_.bits.remove_morr && firmware_sup_morr_ && resolution_ < 600)
|
||||
{
|
||||
d->params_7010.moire = true;
|
||||
}
|
||||
|
|
|
@ -71,6 +71,8 @@ private:
|
|||
/* 注意事项3:7010最后一帧主要作用是反馈当前纸张问题状态码 error_code */
|
||||
/************************************************************************/
|
||||
int get_img_data_7010();
|
||||
int get_img_data_7010_test();
|
||||
|
||||
/*********************获取校正数据***************/
|
||||
/* inx:序号 */
|
||||
/* dpi:1--->200dpi 2--->300dpi 3--->600dpi */
|
||||
|
|
Loading…
Reference in New Issue