博客 / 詳情

返回

qt仿全能掃描王全棧項目

https://github.com/Yih1ko/GreatScanner

GreatScanner - 多功能文檔處理工具

📅 最後更新: 2025年7月31日 | 🐍 當前版本: 1.0.0
圖片

🌟項目概述

一個集OCR識別、文檔轉換、雲備份於一體的生產力工具,採用C++/Qt開發客户端,基於ASIO的高性能服務端架構,支持: - 圖片文字提取(中英文混合識別) - 文檔格式轉換(Word/PDF/Excel) - 截圖即時OCR - 本地->雲端歷史記錄同步 - 搜索功能
代碼約為15000行

開發歷程與致謝🛠️

當前進展核心功能開發已進入收尾階段,但受限於以下因素仍在持續優化:
開發環境侷限 - 全程基於Windows平台開發,部分跨平台兼容性體驗較差 - 早期代碼結構存在技術債務,需邊開發邊重構
能力成長曲線 - 初期編碼能力不足(現在仍有提升空間) - 部分代碼風格明顯受B站UP主(llfc主頁) 影響

🙏 特別鳴謝

後端架構主要學習自llfc前輩的公開技術分享: - 其開源項目為愛發電的精神深刻影響了本項目 - 關鍵技術方案(如ASIO線程池、MySQL連接池等)均借鑑自其工程實踐 > 注:代碼中若發現風格跳躍或重構痕跡,正是開發者技術成長的見證 🌱

技術架構

graph TD     
A[Qt客户端] -->|TCP/HTTP/JSON| B(ResourceServer)    
A -->|共享內存IPC| C(OCR處理進程)    
B --> D[MySQL數據庫]    
B --> E[Redis緩存]    
C --> F[PaddleOCR引擎]

✨ 核心功能

客户端功能

  • OCR識別系統
  • 基於PaddleOCR的本地化識別引擎
  • 共享內存IPC進程通信架構
  • 支持截圖即時識別(Alt+S快捷鍵觸發)
  • 文檔轉換圖片轉Word(自動排版)
  • 圖片轉PDF(帶水印功能)
  • 圖片轉Excel(表格識別)
  • 用户系統郵箱驗證註冊/登錄

    服務端特性

  • 雙IO池架構
  • 獨立線程池處理TCP文件傳輸和HTTP請求
  • 基於ASIO的異步IO上下文池
    數據層
  • MySQL連接池(支持事務)
  • Redis緩存驗證碼異步
  • BCrypt哈希計算
  • 智能搜索中文分詞(cppJieba庫集成)
  • Trie樹前綴匹配多維度排序算法

📦 模塊結構

GreatScanner/
├── QtClient/                # Qt客户端 
│   ├── core/                # 核心模塊 
│   │   ├── ipc/             # 進程通信 
│   │   ├── search/          # 搜索引擎 
│   │   └── utils/           # 工具類
│   ├── pages/               # 界面模塊
│   └── resources/           # 資源文件 
├── server/                  # 服務端 
│   ├── asio_pool/           # IO線程池
│   ├── dao/                 # 數據訪問層 
│   └── services/            # 業務邏輯 
└── ocr_system/              # OCR處理模塊

編譯要求

  • Qt 6.5+ (客户端)
  • C++20 (服務端)
  • OpenCV 4.5+
  • PaddleOCR 2.5+

未來計劃

  • 公式識別證件掃描性能優化
user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.