type
status
date
slug
summary
tags
category
icon
password
文件拉正功能,實作平台玩看看
需求分析
- 使用者輸入側面圖片,可以拉正為正面視圖
- 自定義輸出檔名/無設定則以時間戳記命名
- 自選png、jpg檔案格式
- 提供標註視覺化預覽圖
- 可消除目前已標記資料作初始化
- 狀態提示區
- 拉皮結果預覽圖
- 新圖上傳要能覆蓋記錄
設計與實作技術
詢問AI實作可能性,選以python、gradio、openCV方式實作
開發問題筆記
- 留意套件之間版本號是否相容
- 標記視覺化區原本無法顯示角點的中文字詞(左上等字),因OpenCV的cv2.putText函式不支援中文文字。 OpenCV內建的字型主要支援ASCII字符,對於非ASCII字符(如中文)無法正確顯示。
- 解法
- 使用套件Pillow(PIL)來繪製中文標籤,Pillow是一個支援多語言文字的圖像處理庫,可以與OpenCV結合使用來繪製中文標籤。
- 自訂中文字型
- 留意openCV三原色通道的順序是BGR,與Pillow的RGB不同
- 輸入的圖大小解析度不一,連帶影響標記視覺化區的角點圈圈與標籤大小也不一
- 解法
- 利用公式以固定圖片比例去計算
測試DEMO
試以網路圖片複製至剪貼簿後,貼上平台輸入區使用。