我正在開發一個接受圖像(照片)作爲用戶輸入的項目,使用命令行Tesseract-OCR在其上執行OCR,將結果存儲在文本文件中作爲「輸入.txt「,然後使用java程序對此文件執行停止詞刪除。所有這些都應該在碼頭集裝箱內完成。我已經在其中安裝了Tesseract OCR來創建碼頭圖像。我有StopWord-Removal Java代碼。無法從docker中的掛載目錄中讀取文件
在我的項目,我已經安裝主機操作系統的目錄內碼頭工人形象「/作品」的目錄,這樣我可以從用戶的主目錄中獲得「圖像(照片)」直接,
docker run --rm -v `pwd`:/work -w /work ocr
這裏「ocr」是我的碼頭形象。我創建bash腳本,它調用Tessract-OCR,然後調用StopWordRemoval Java代碼,如
#!/bin/bash
tesseract sample.jpg input
java StopWords
的問題是,「正方體sample.jpg輸入」的輸出保存爲「input.txt中」,但它是在java程序中不可訪問,而如果我嘗試使用相同的代碼打開來自給定目錄的其他文件,它正在工作。
是的,文件被寫入掛載的主機目錄。我終於嘗試了不同的方法,找到了一種方法。我在java中執行了shell命令。在我的程序中,我使用「cat input.txt」,其輸出存儲在BufferedReader中,後來我處理了該輸出。 –