做互斥避免设备不出图

This commit is contained in:
13038267101 2022-08-20 11:18:34 +08:00
parent b91410855f
commit 8517768a8c
5 changed files with 52 additions and 30 deletions

View File

@ -646,7 +646,7 @@ void hg_scanner_200::image_process(std::shared_ptr<tiny_buffer>& buffer)
///////////////////////////////////
if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
{
err = hg_imgproc::multi_out_red(handle);
//HG_LOGHG_LOG_LEVEL_DEBUG_INFO,"多流出红开启\r\n");
@ -655,7 +655,7 @@ void hg_scanner_200::image_process(std::shared_ptr<tiny_buffer>& buffer)
{
hg_imgproc::sharpenType(handle);
}
if (image_prc_param_.bits.split)
if (img_conf_.splitImage)
{
int colormode=1;
if(img_conf_.filter == RID_COLOR_NONE)
@ -672,7 +672,7 @@ void hg_scanner_200::image_process(std::shared_ptr<tiny_buffer>& buffer)
//HG_LOGHG_LOG_LEVEL_DEBUG_INFO,"图像拆分开启\r\n");
}
if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout)
if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout)
{
if(img_conf_.automaticcolor)
{
@ -965,7 +965,7 @@ else
ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT;
ic.is_switchfrontback = image_prc_param_.bits.exchange;
ic.autodescrew = image_prc_param_.bits.automatic_skew;
//ic.multi_output_red = image_prc_param_.bits.rid_red;
ic.multi_output_red = image_prc_param_.bits.rid_red;
ic.hsvcorrect = image_prc_param_.bits.rid_answer_red;
ic.sharpen = image_prc_param_.bits.sharpen;
@ -1026,7 +1026,11 @@ else
ic.cropRect.x = custom_area_lt_x_ *ic.resolution_dst /25.4;
ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4;
ic.multiOutput = MultiOutput::Unused; //暂无参数
ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out;
if (!is_multiout)
{
ic.multiOutput = MultiOutput::Unused;
}
ic.normalCrop = image_prc_param_.bits.dark_sample;
ic.dogeardistabce = fractate_level_;
ic.fadeback = image_prc_param_.bits.erase_bakground;

View File

@ -629,7 +629,7 @@ void hg_scanner_300::image_process(std::shared_ptr<tiny_buffer>& buffer)
{
hg_imgproc::sharpenType(handle);
}
if (image_prc_param_.bits.split)
if (img_conf_.splitImage)
{
int colormode=1;
if(img_conf_.filter == RID_COLOR_NONE)
@ -646,7 +646,7 @@ void hg_scanner_300::image_process(std::shared_ptr<tiny_buffer>& buffer)
//HG_LOGHG_LOG_LEVEL_DEBUG_INFO,"图像拆分开启\r\n");
}
if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout)
if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout)
{
if(img_conf_.automaticcolor)
{
@ -662,7 +662,7 @@ void hg_scanner_300::image_process(std::shared_ptr<tiny_buffer>& buffer)
//多流输出最后处理
if (is_multiout)
{
int multi_out = image_prc_param_.bits.multi_out;
int multi_out = img_conf_.multiOutput;
err = hg_imgproc::multi_out(handle,multi_out);
}
hg_imgproc::final(handle);
@ -947,7 +947,11 @@ void hg_scanner_300::writedown_image_configuration(void)
ic.cropRect.width = width;
ic.cropRect.x = custom_area_lt_x_ *ic.resolution_dst /25.4;
ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4;
ic.multiOutput = MultiOutput::Unused; //暂无参数
ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out;
if (!is_multiout)
{
ic.multiOutput = MultiOutput::Unused;
}
ic.normalCrop = image_prc_param_.bits.dark_sample;
ic.dogeardistabce = fractate_level_;
ic.fadeback = image_prc_param_.bits.erase_bakground;

View File

@ -782,7 +782,7 @@ void hg_scanner_302::image_process(std::shared_ptr<tiny_buffer>& buff)
///////////////////////////////////
if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
{
err = hg_imgproc::multi_out_red(handle);
//printf("多流出红开启\r\n");
@ -799,10 +799,10 @@ void hg_scanner_302::image_process(std::shared_ptr<tiny_buffer>& buff)
err = hg_imgproc::fadeback(handle,img_conf_.fadebackrange,img_conf_.is_duplex);
}
if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
err = hg_imgproc::multi_out_red(handle);
if (image_prc_param_.bits.split)
if (img_conf_.splitImage)
{
//split3399_++;
int colormode=1;
@ -817,7 +817,7 @@ void hg_scanner_302::image_process(std::shared_ptr<tiny_buffer>& buff)
,img_conf_.is_duplex);
}
if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout)
if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout)
{
if(img_conf_.automaticcolor)
{
@ -977,7 +977,7 @@ int hg_scanner_302::writedown_image_configuration(void)
ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT;
ic.is_switchfrontback = image_prc_param_.bits.exchange;
ic.autodescrew = image_prc_param_.bits.automatic_skew;
//ic.multi_output_red = image_prc_param_.bits.rid_red; //必须屏蔽,否则超时,未知错误不可描述。
ic.multi_output_red = image_prc_param_.bits.rid_red;
ic.hsvcorrect = image_prc_param_.bits.rid_answer_red;
ic.sharpen = image_prc_param_.bits.sharpen;
ic.enhance_color = image_prc_param_.bits.rid_color;
@ -1026,6 +1026,11 @@ int hg_scanner_302::writedown_image_configuration(void)
ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4;
}
ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out;
if (is_multiout)
{
ic.multiOutput = MultiOutput::Unused;
}
ic.normalCrop = image_prc_param_.bits.dark_sample;
ic.dogeardistabce = fractate_level_;
ic.fadeback = image_prc_param_.bits.erase_bakground;

View File

@ -611,7 +611,7 @@ void hg_scanner_400::image_process(std::shared_ptr<tiny_buffer>& buffer)
///////////////////////////////////
if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
{
err = hg_imgproc::multi_out_red(handle);
//printf("多流出红开启\r\n");
@ -623,7 +623,7 @@ void hg_scanner_400::image_process(std::shared_ptr<tiny_buffer>& buffer)
hg_imgproc::sharpenType(handle);
}
if (image_prc_param_.bits.split)
if (img_conf_.splitImage)
{
int colormode=1;
if(img_conf_.filter == RID_COLOR_NONE)
@ -641,7 +641,7 @@ void hg_scanner_400::image_process(std::shared_ptr<tiny_buffer>& buffer)
//VLOG_MINI_1(LOG_LEVEL_DEBUG_INFO, "图像拆分开启:%s\n",hg_scanner_err_name(ret));
}
if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout)
if (!img_conf_.splitImage || !img_conf_.multi_output_red || !is_multiout)
{
if(img_conf_.automaticcolor)
{
@ -906,7 +906,7 @@ void hg_scanner_400::writedown_image_configuration(void)
ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT;
ic.is_switchfrontback = image_prc_param_.bits.exchange;
ic.autodescrew = image_prc_param_.bits.automatic_skew;
//ic.multi_output_red = image_prc_param_.bits.rid_red;
ic.multi_output_red = image_prc_param_.bits.rid_red;
ic.hsvcorrect = image_prc_param_.bits.rid_answer_red;
ic.sharpen = image_prc_param_.bits.sharpen;
@ -961,7 +961,11 @@ void hg_scanner_400::writedown_image_configuration(void)
ic.cropRect.x = custom_area_lt_x_ *ic.resolution_dst /25.4;
ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4;
ic.multiOutput = MultiOutput::Unused; //暂无参数
ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out;
if (!is_multiout)
{
ic.multiOutput = MultiOutput::Unused;
}
ic.normalCrop = image_prc_param_.bits.dark_sample;
ic.dogeardistabce = fractate_level_;
ic.fadeback = image_prc_param_.bits.erase_bakground;

View File

@ -787,7 +787,7 @@ void hg_scanner_402::image_process(std::shared_ptr<tiny_buffer>& buff)
///////////////////////////////////
if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
{
err = hg_imgproc::multi_out_red(handle);
//printf("多流出红开启\r\n");
@ -799,15 +799,15 @@ void hg_scanner_402::image_process(std::shared_ptr<tiny_buffer>& buff)
hg_imgproc::sharpenType(handle);
}
if(image_prc_param_.bits.erase_bakground)
if(img_conf_.fadeback)
{
err = hg_imgproc::fadeback(handle,img_conf_.fadebackrange,img_conf_.is_duplex);
}
if (image_prc_param_.bits.rid_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
if (img_conf_.multi_output_red && img_conf_.pixtype == COLOR_MODE_24_BITS)
err = hg_imgproc::multi_out_red(handle);
if (image_prc_param_.bits.split)
if (img_conf_.splitImage)
{
//split3399_++;
int colormode=1;
@ -822,7 +822,7 @@ void hg_scanner_402::image_process(std::shared_ptr<tiny_buffer>& buff)
,img_conf_.is_duplex);
}
if (!image_prc_param_.bits.split || !image_prc_param_.bits.rid_red || !is_multiout)
if (!img_conf_.splitImage || !img_conf_.multi_output_red|| !is_multiout)
{
if(img_conf_.automaticcolor)
{
@ -841,7 +841,7 @@ void hg_scanner_402::image_process(std::shared_ptr<tiny_buffer>& buff)
//多流输出最后处理
if (is_multiout)
{
int multi_out = image_prc_param_.bits.multi_out;
int multi_out = img_conf_.multiOutput;
err = hg_imgproc::multi_out(handle,multi_out);
}
hg_imgproc::final(handle);
@ -982,7 +982,7 @@ int hg_scanner_402::writedown_image_configuration(void)
ic.is_autodiscradblank_vince = image_prc_param_.bits.page == PAGE_OMIT_EMPTY_RECEIPT;
ic.is_switchfrontback = image_prc_param_.bits.exchange;
ic.autodescrew = image_prc_param_.bits.automatic_skew;
//ic.multi_output_red = image_prc_param_.bits.rid_red; //必须屏蔽,否则超时,未知错误不可描述。
ic.multi_output_red = image_prc_param_.bits.rid_red;
ic.hsvcorrect = image_prc_param_.bits.rid_answer_red;
ic.sharpen = image_prc_param_.bits.sharpen;
ic.enhance_color = image_prc_param_.bits.rid_color;
@ -1031,6 +1031,11 @@ int hg_scanner_402::writedown_image_configuration(void)
ic.cropRect.y = custom_area_lt_y_ *ic.resolution_dst /25.4;
}
ic.multiOutput = (MultiOutput)image_prc_param_.bits.multi_out;
if (!is_multiout)
{
ic.multiOutput = MultiOutput::Unused;
}
ic.normalCrop = image_prc_param_.bits.dark_sample;
ic.dogeardistabce = fractate_level_;
ic.fadeback = image_prc_param_.bits.erase_bakground;
@ -1042,7 +1047,7 @@ int hg_scanner_402::writedown_image_configuration(void)
ic.filter = 3;
else
{
ic.filter = filter_clr[image_prc_param_.bits.rid_color];
ic.filter = filter_clr[ic.enhance_color];
// if(ic.filter != 3)
// ic.pixtype = 2;
@ -1052,11 +1057,11 @@ int hg_scanner_402::writedown_image_configuration(void)
}
//多留输出的处理
if (image_prc_param_.bits.multi_out == MULTI_GRAY_AND_BW && is_multiout)
if (ic.multiOutput == MULTI_GRAY_AND_BW && is_multiout)
{
ic.pixtype = 1;
}
else if ((image_prc_param_.bits.multi_out == MULTI_OUT_ALL ||image_prc_param_.bits.multi_out == MULTI_COLOR_AND_GRAY||image_prc_param_.bits.multi_out == MULTI_COLOR_AND_BW) && is_multiout)
else if ((ic.multiOutput == MULTI_OUT_ALL ||ic.multiOutput == MULTI_COLOR_AND_GRAY||ic.multiOutput == MULTI_COLOR_AND_BW) && is_multiout)
{
ic.pixtype = 2;