簡體   English   中英

OpenCV on rpi - System.loadLibrary中的分段錯誤

[英]OpenCV on rpi - segmentation fault in System.loadLibrary

我正在嘗試在覆盆子pi上安裝OpenCV,經過多次嘗試配置cmake后,已成功生成opencv-400.jar和libopencv_java400.so網上的各種指南都沒有說明下一步該做什么。

我的類路徑中有jar,測試代碼編譯正常,打印出來的System.getProperty("java.library.path")包含包含.so文件的目錄。 在另一個目錄/ usr / local / lib中,make進程放置了一堆.a文件。 cmake指令說,通過使庫不共享所需的部分將全部放在java .so文件中。 我不確定這有道理嗎? 我還必須指定/ usr / local作為構建前綴 - 也許這應該是pi上的其他內容?

System.loadLibrary(“opencv_java400”)行產生一個簡單的Segmentation錯誤。

......當然不應該這樣。 如果有人將rpi相機連接到opencv並從java訪問它,也許你可以共享cmake參數。

恢復到opencv 3.3.0之后,我不需要弄清楚cmake,我讓opencv使用c ++處理pi。 然后我在JNI中包裝了我所需的opencv命令......但仍然出現了分段錯誤。 然后我學會了使用gdb並非常快速地將錯誤跟蹤到libopenmpt。 快速搜索說這會在內存不足時導致分段錯誤。

在這種情況下的解決方案是運行java -Xss128m ...來運行我的代碼。

我猜,這是修復了從構建的java組件中使用opencv 4的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM