除背景色二值化阈值调整为50(100-50) --23.02.21

This commit is contained in:
masayume_ht 2023-03-08 09:41:45 +08:00
parent 2fdaa65f98
commit f82353257c
6 changed files with 24 additions and 9 deletions

View File

@ -82,3 +82,4 @@
3.调整msvc与mfc链接顺序默认开启多核编译
4.添加色偏算法
5.UI开放色偏校正增加色偏校正协议 --23.01.05
6.除背景色二值化阈值调整为50100-50 --23.02.21

View File

@ -262,8 +262,6 @@ void GScan439Android::Scanner_StartScan(UINT16 count)
}
write_reg(m_usb, 0x1000, m_param.is_duplex ? m_param.scannum /2 : m_param.scannum);
scanner_control(m_usb, SC_START);
if (!m_usbthread.get()) {
b_usbthread = true;
m_usbthread.reset(new thread(&GScan439Android::usbmainloop, this));

View File

@ -121,6 +121,7 @@ enum HGType
IMG,
AutoCorrect,
STOPSCAN,
CMD_OUT,
};
struct HGEIntInfo
@ -206,6 +207,9 @@ enum Scanner_Reg_Defs
SR_GET_TOKEN_LENGHT,
SR_DECODE_TOKEN,
SR_CLEAN_PAPER_ROAD,
SR_EXECUTE_CMD,
SR_EXECUTE_CMD_OUT_LENGHT,
SR_GET_EXECUTE_CMD_OUT,
SR_GET_CUO_ERROR = 0x50,
SR_GET_DOU_ERROR,
SR_GET_JAM_ERROR,

View File

@ -210,7 +210,7 @@ void ImageMatQueue::setparam(const GScanCap& param)
if (param.fadeback)//&& param.pixtype == 2
{
m_iaList.push_back(shared_ptr<CImageApply>(new CImageApplyFadeBackGroudColor(100,0,param.fadeback_range)));
m_iaList.push_back(shared_ptr<CImageApply>(new CImageApplyFadeBackGroudColor(50,0,param.fadeback_range)));
}
//filter 0 r 1 g 2 b 3 none enhance color 0 none 1 r 2 g 3 b
if (param.filter != 3 || param.enhance_color) {
@ -764,6 +764,11 @@ void ImageMatQueue::duplex_process(CacheInfo info)
uvmats.clear();
}
#endif
//string path = FileTools::get_appdata_path() + to_string(m_snowflake.nextid()) + ".jpg";
//cv::imwrite(path, mats[0]);
//path = FileTools::get_appdata_path() + to_string(m_snowflake.nextid()) + ".jpg";
//cv::imwrite(path, mats[1]);
FileTools::writelog(log_DEBUG, " image process finish");
if (!scanParam.is_duplex && mats.size() > 1) {
mats.pop_back();
@ -772,6 +777,8 @@ void ImageMatQueue::duplex_process(CacheInfo info)
{
splitimg(mats);
}
for (int i = 0; i < mats.size(); i++) {
if (!mats[i].empty()) {
IMat2Bmp idata;

View File

@ -2603,9 +2603,10 @@ Result HuagaoDs::imageLayoutSet(const Identity& origin, ImageLayout& lay) {
Result HuagaoDs::imageLayoutReset(const Identity& origin, ImageLayout& data) {
return imageLayoutGet(origin, data);
}
static int xtfer = 0;
Result HuagaoDs::imageMemXferGet(const Identity& origin, ImageMemXfer& data) {
if (!m_pendingXfers) {
FileTools::writelog(log_INFO, "正在上传图片 ===> Twain imageNativeXferGet m_pendingXfers ");
return seqError();
}
@ -2617,13 +2618,16 @@ Result HuagaoDs::imageMemXferGet(const Identity& origin, ImageMemXfer& data) {
auto dib = header();
auto bpl = bytesPerLine();
auto memSize = data.memory().size();
FileTools::writelog(log_INFO, "正在上传图片 ===> Twain imageNativeXferGet size error setup.maxsize = " + to_string(setup.maxSize()) +" setup.minsize "+ to_string(setup.minSize()));
if (memSize > setup.maxSize() || memSize < setup.minSize()) {
FileTools::writelog(log_INFO, "正在上传图片 ===> Twain imageNativeXferGet size error data.size = "+to_string(memSize) );
return badValue();
}
auto maxRows = memSize / bpl;
auto rows = std::min<UInt32>(maxRows, static_cast<UInt32>(dib->biHeight) - m_memXferYOff);
if (rows == 0) {
FileTools::writelog(log_INFO, "正在上传图片 ===> Twain imageNativeXferGet rows == 0");
return seqError(); // image already transfered in this session
}
cv::Mat mat;
@ -2678,13 +2682,14 @@ Result HuagaoDs::imageMemXferGet(const Identity& origin, ImageMemXfer& data) {
m_pendingXfers = 0;
m_memXferYOff = 0;
//bmpData.reset(new std::vector<unsigned char>);
FileTools::writelog(log_INFO, "正在上传图片 ===> Twain imageNativeXferGet m_memXferYOff transfered num of " + to_string(++xtfer) + " images");
return { ReturnCode::XferDone, ConditionCode::Success };
}
FileTools::writelog(log_INFO, "正在上传图片 ===> Twain imageNativeXferGet transfered num of " + to_string(++xtfer) + " images");
return success();
}
static int xtfer = 0;
Result HuagaoDs::imageNativeXferGet(const Identity& id, ImageNativeXfer& data) {
if (!m_pendingXfers) {
return seqError();

Binary file not shown.