From f82353257cce4c82b40bee311fd860031a2a608b Mon Sep 17 00:00:00 2001 From: masayume_ht <1936714878@qq.com> Date: Wed, 8 Mar 2023 09:41:45 +0800 Subject: [PATCH] =?UTF-8?q?=E9=99=A4=E8=83=8C=E6=99=AF=E8=89=B2=E4=BA=8C?= =?UTF-8?q?=E5=80=BC=E5=8C=96=E9=98=88=E5=80=BC=E8=B0=83=E6=95=B4=E4=B8=BA?= =?UTF-8?q?50=EF=BC=88100-50=EF=BC=89=20--23.02.21?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- changelog.txt | 3 ++- huagao/Device/GScan439Android.cpp | 2 -- huagao/Device/IConfig.h | 6 +++++- huagao/Device/ImageMatQueue.cpp | 9 ++++++++- huagao/huagaods.cpp | 13 +++++++++---- huagao/stdafx.h | Bin 25538 -> 25538 bytes 6 files changed, 24 insertions(+), 9 deletions(-) diff --git a/changelog.txt b/changelog.txt index 55bd5605..8661c7ac 100644 --- a/changelog.txt +++ b/changelog.txt @@ -81,4 +81,5 @@ 2.修复跳过空白页首选项配置保存问题 -- 22.11.28 3.调整msvc与mfc链接顺序,默认开启多核编译 4.添加色偏算法 - 5.UI开放色偏校正,增加色偏校正协议 --23.01.05 \ No newline at end of file + 5.UI开放色偏校正,增加色偏校正协议 --23.01.05 + 6.除背景色二值化阈值调整为50(100-50) --23.02.21 \ No newline at end of file diff --git a/huagao/Device/GScan439Android.cpp b/huagao/Device/GScan439Android.cpp index cacb1846..17623d76 100644 --- a/huagao/Device/GScan439Android.cpp +++ b/huagao/Device/GScan439Android.cpp @@ -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)); diff --git a/huagao/Device/IConfig.h b/huagao/Device/IConfig.h index fcd347cb..efda10ff 100644 --- a/huagao/Device/IConfig.h +++ b/huagao/Device/IConfig.h @@ -80,7 +80,7 @@ static std::map SupPaperTyps = { #ifdef G300 {{TwSS::None,PaperAlign::Rot0},G400_A4}, #else // G300 - {{TwSS::None,PaperAlign::Rot0},G400_A3}, + {{TwSS::None,PaperAlign::Rot0}, G400_A3}, #endif {{TwSS::MaxSize,PaperAlign::Rot0},G400_LONGLETTER}, {{TwSS::USStatement,PaperAlign::Rot0},G400_LONGLETTER}, @@ -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, diff --git a/huagao/Device/ImageMatQueue.cpp b/huagao/Device/ImageMatQueue.cpp index 619eb34f..bbd157dd 100644 --- a/huagao/Device/ImageMatQueue.cpp +++ b/huagao/Device/ImageMatQueue.cpp @@ -210,7 +210,7 @@ void ImageMatQueue::setparam(const GScanCap& param) if (param.fadeback)//&& param.pixtype == 2 { - m_iaList.push_back(shared_ptr(new CImageApplyFadeBackGroudColor(100,0,param.fadeback_range))); + m_iaList.push_back(shared_ptr(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; diff --git a/huagao/huagaods.cpp b/huagao/huagaods.cpp index 117866f9..6471cbdf 100644 --- a/huagao/huagaods.cpp +++ b/huagao/huagaods.cpp @@ -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(maxRows, static_cast(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); + 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(); @@ -2698,7 +2703,7 @@ Result HuagaoDs::imageNativeXferGet(const Identity& id, ImageNativeXfer& data) { std::copy(bmpBegin(), bmpEnd(), data.data().data()); //bmpData.reset(new std::vector); //FileTools::write_log("ϴͼƬ ===> Twain transfered num of " + to_string(++xtfer) + " images"); - FileTools::writelog(log_INFO, "ϴͼƬ ===> Twain transfered num of " + to_string(++xtfer) + " images"); + FileTools::writelog(log_INFO, "ϴͼƬ ===> Twain transfered num of " + to_string(++xtfer) + " images"); return { ReturnCode::XferDone, ConditionCode::Success }; } diff --git a/huagao/stdafx.h b/huagao/stdafx.h index e8fe4b20232a8d393e3fcff83c779070abbdc019..096452526ef1540758be8976fba7072d06c048f5 100644 GIT binary patch delta 31 ncmX?fobk|c#tkhTti}um3