Project Overview
從現場拍照到自動歸檔,一條龍不靠人工鍵入

港口碼頭每天有幾百個貨櫃進出,每一櫃都得拍照存證、建檔備查;偏偏現場常是戶外、訊號不穩,靠人工在手機上敲 11 碼櫃號,既慢又容易打錯。我們為某港口貨櫃碼頭營運商打造的,是一套把「拍照、辨識、上傳、歸檔」串成一條龍的系統:現場人員用 Android App 對著貨櫃拍照,影像辨識自動帶出櫃號、逐張上傳,斷網也能先存本機、恢復連線再自動補傳;後台則把每張照片依年、月、日、櫃號自動歸位。也就是說,每個貨櫃的進出都留得下照片、事後幾秒就查得到,不會因為人手鍵錯或現場斷訊而漏拍漏傳。

行動端 App 工號驗證、拍照 OCR 辨識櫃號、相簿補拍、離線建檔與自動續傳,一支手機在碼頭現場完成。
管理後台 年月日樹狀瀏覽、櫃號搜尋、AJAX 即時看圖、櫃號更名合併、ZIP 批次下載與垃圾桶還原。
辨識與自動化 ML Kit OCR 加 ISO 6346 格式校正、離線優先上傳、網路恢復自動重傳、逾期資料自動清理,串成不靠人工的流程。
Core Features
系統的核心功能

拍照 OCR 辨識櫃號

現場對著貨櫃拍照,App 以 Google ML Kit 影像辨識自動讀出照片上的文字,再依 ISO 6346 國際櫃號格式(4 碼英文+7 碼數字)自動組出櫃號。也就是說,現場人員不必一個字一個字手動輸入 11 碼櫃號,拍照就帶出來,少了打錯的機會。

智慧字元校正

OCR 常把 O 看成 0、A 看成 4、R 看成 9;系統依櫃號每一段該是英文還是數字的規則自動校正,並支援多種匹配模式,即使部分字元辨識失敗,也能組出最可能的櫃號。也就是說,辨識準確率不靠「拍得剛剛好」,而是靠規則把常見誤判補回來。

離線優先作業

碼頭現場訊號常不穩。無網路時,拍照與建檔照樣進行、資料先存在手機本機的資料庫;App 也會偵測網路狀態,一旦連線恢復就自動把待傳的照片補傳完成。也就是說,作業不會因為訊號斷掉而卡住,現場人員不必站在原地等訊號。

斷點續傳與單張重傳

每一張照片獨立記錄上傳狀態,整批上傳到一半斷線,恢復後只補傳沒成功的那幾張,不必整批重來;後台若發現某張失敗,也能單張重送。也就是說,上傳失敗不會讓整批作業前功盡棄,省下重拍重傳的時間與流量。

年月日樹狀歸檔

上傳的照片,後台自動依「年 → 月 → 日 → 櫃號」四層結構歸位;管理者依日期層層展開就能找到某天某櫃的所有照片,也能依日期區間與櫃號搜尋。也就是說,幾十萬張存證照片不再是一個大資料夾,而是能依時間與櫃號快速定位。

櫃號更名合併與批次下載

櫃號打錯或需要調整時可直接更名,若當天已有同櫃號則自動把照片合併;查閱時可依年 / 月 / 日或單一櫃號打包成 ZIP 一次下載,ZIP 內還原成年月日資料夾結構。也就是說,事後修正與資料調閱都在後台點一點就完成,不必進伺服器搬檔案。

Technical Highlights
技術重點:弱網環境下的可靠上傳

這套系統前端是 Kotlin 的 Android App(CameraX 拍照、ML Kit 辨識、Room 本機資料庫),後端是 Ruby on Rails 搭配 Grape API。框架與套件的選擇只是基礎,我們在碼頭現場花最多心力處理的,是以下三件事。

用免授權的內建 SDK 辨識,不必另買引擎

客戶原本打算採購商用 OCR 引擎;我們評估後判斷,用行動平台內建、免額外授權費的影像辨識 SDK(Android 的 ML Kit)就足以辨識櫃號,替客戶省下這筆長期成本。SDK 負責讀出文字,把文字組成正確櫃號則靠我們自訂的格式分析——正則驗證、多段匹配、相似字元校正。也就是說,辨識結果可控、可調規則,成本也一併省下。

離線優先與背景上傳

App 用本機資料庫先落地任務與照片,上傳交給背景服務執行,切到背景或鎖屏都不中斷;再搭配網路狀態監聽,斷線自動排隊、恢復自動重傳。也就是說,「先存本機、再慢慢傳」是寫進架構裡的機制,弱網環境下能不能撐住,不必碰運氣。

三步驟上傳協定

上傳設計成「建立任務 → 逐張上傳 → 確認完成」三步,每張照片的成敗都查得到、補得回。照片上傳前還會自動壓縮到合理大小、依 EXIF 校正方向,減少頻寬與辨識干擾。也就是說,在頻寬有限的現場,系統傳的是「剛好夠用」的照片,而不是原始大圖硬塞。

以下這些原本靠人工的環節,系統都自動接手了:櫃號從手動輸入變成拍照自動辨識與校正;上傳從「斷了要重來」變成斷點續傳、網路恢復自動補傳;歸檔從人工分資料夾變成依年月日與櫃號自動歸位;連超過保留期限的舊資料與日誌,也由背景排程自動清理,不必人工顧硬碟空間。對營運方來說,等於把碼頭現場每天幾百次的拍照存證,變成一條從辨識、上傳到歸檔都自動接續的流程。

值得一提的是,離線續傳這一段,並不在客戶原本的需求裡。是我們在溝通過程中主動追問了碼頭的現場網路環境,得知訊號時有時無,判斷「拍完即時上傳」在現場一定會卡,才主動提出離線優先的架構。也就是說,在碼頭這種弱網、戶外、量大的環境,系統可靠不可靠,往往取決於這些一開始沒被寫進需求、得靠經驗主動追問才補得上的細節。
FAQ
貨櫃辨識系統開發常見問題

貨櫃/櫃號辨識系統開發要多少錢?

取決於功能範圍。若包含行動端 OCR 辨識、離線續傳與後台歸檔管理,屬於中大型專案;影響報價的主因是辨識準確度要求、離線與續傳的可靠度,以及後台管理與報表的複雜度。建議先列出必要功能,我們可以依範圍提供分階段的報價方案。

開發這樣一套辨識歸檔系統需要多久?

常見時程約 4 到 8 個月:需求釐清與流程設計約 1–2 個月,行動端 App 與後台開發、辨識調校與測試約 3–5 個月,最後是現場實測與上線輔導。若分階段上線(先做拍照上傳與歸檔、再強化辨識與報表),第一個版本可以更快進到現場試用。

手機拍照辨識櫃號準確嗎?辨識錯了怎麼辦?

系統以 Google ML Kit 進行 OCR 文字辨識,再套用 ISO 6346 櫃號格式驗證與相似字元校正(如 O/0、A/4、R/9),並支援多種匹配模式來提高準確率。辨識結果會顯示在可編輯的櫃號欄位,現場人員可在送出前手動確認或修正,兼顧自動化與正確性。

碼頭現場網路不穩,也能正常作業嗎?

可以。系統採離線優先設計,無網路時照樣拍照、建檔,資料先存在手機本機資料庫;App 會偵測網路狀態,連線恢復後自動把待傳照片補傳完成,並支援斷點續傳與單張重傳,不必整批重來。

這套系統可以跟既有的港口或倉儲系統整合嗎?

可以。系統透過 RESTful API 與後端溝通,也提供 API 文件;客製化開發的系統可透過 API 與既有的港口作業、倉儲或 ERP 系統串接,讓辨識與歸檔的資料雙向同步,不必更換現有系統——這也是客製化開發相對套裝軟體的主要優勢。

CASE STUDY
更多案例分享
Taipei 101 mall:精品風格與服務整合的百貨商場APP
APP設計案 / Taipei 101 Mall
飛果出勤打卡系統:專為中小企業打造的服務系統
出勤平台/ 果子云數位科技
健身房 App:團課預約、月訂閱與金流串接
App / 健身產業
電動自行車保固管理系統:保固註冊、理賠流程與多語系管理
管理平台 / 電動自行車產業
貨物追蹤管理系統:空運海運提單追蹤與第三方 API 整合
管理平台 / 物流貨運
屏仕建商營運平台:一站式服務,從售前到售後,輕鬆管理物件
管理平台 / 屏仕建設
淡江水資源及環境工程系:換新老舊系網觀感及使用順暢度提升
學校系網 / 淡江水環系
台灣科技大學應外系:客製化系網站需求,系網功能更明確活潑
學校系網 / 台科大應外系
華鼎生技報價合約系統開發:提供業務部門報價與合約管理系統
管理平台 / 華鼎生技
台塑網.NET UI/UX設計專案:為多項產品重新定義設計準則
管理平台 / 台塑網科技
氣象局天氣展演系統整合建置:在大型可觸控螢幕的圖資展示
展演系統 / 中央氣象局
正在評估貨櫃辨識、影像辨識或行動作業系統?請立即聯絡我們!
INTERESTED IN COLLABORATION? CONTACT US NOW