[英]color detection using opencv
我正在嘗試使用opencv從下面的圖像中提取標題欄。
我正在使用以下代碼-
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
Mat original = Imgcodecs.imread("D:/test_bg_extract.png", Imgcodecs.CV_LOAD_IMAGE_UNCHANGED);
Mat hsvMat = new Mat();
Imgproc.cvtColor(original, hsvMat, Imgproc.COLOR_BGR2HSV);
Mat dst = new Mat();
Core.inRange(hsvMat, new Scalar(23,231,205), new Scalar(23,231,205), dst);
我使用了一個顏色選擇器來確定標題欄的HSV值(從hsvMat轉換為顯示圖像)。 當運行代碼以顯示輸出時,我看到一個空白屏幕。 我不知道我在做什么錯。 我選錯了HSV顏色嗎? 如果我知道確切的RGB代碼,那么我應該將圖像轉換為HSV嗎? (但是,這似乎是Internet上許多代碼示例中的標准方法)。
好的,我使用基於RGB的顏色解決了該問題,在指定所需顏色的同時切換到BGR。 所以這工作了-
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
Mat original = Imgcodecs.imread("D:/test_bg_extract.png", Imgcodecs.CV_LOAD_IMAGE_UNCHANGED);
Mat dst = new Mat();
Core.inRange(original, new Scalar(132,178,205), new Scalar(132,178,205), dst);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.