PDA

View Full Version : تشخیص نادرست رنگ در OpenCV



soroush.taheri
جمعه 14 دی 1397, 15:55 عصر
من کد ساده ای نوشتم برای نمایش رنگِ مختصات خاصی از تصویر ولی ظاهرا به درستی عمل نمیکنه؛ به عنوان مثال وقتی که مختصات یک قسمت قرمزرنگ از تصویر رو میدم، مقدار (255و255و255) بر میگرده.

نمونه تصویری که تهیه کردم:
149552

کد جاوا:


public static void main(String[] args) throws IOException {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
String template = "colors.jpg";

Mat raw = Imgcodecs.imread(template);

detect(raw,80,400);

}
public static void detect(Mat img, int x1, int y1)
{
double[] data = img.get(x1, y1);
Imgproc.circle(img, new Point(x1,y1), 20, new Scalar(255,255,0),3);
Imgcodecs.imwrite(template, img);
for(double d : data)
{
System.out.println(d);
}
}



نمونه خروجی (شامل دایره ای به مرکز مختصاتی که به عنوان ورودی دادم):
149553


این اتفاق با رنگ های دیگه هم رخ میده و مدام اطلاعات نادرست دریافت میکنم. (تو این مورد، قرمز رو (255,255,255) برمیگردونه)
از نظر شما کجای کار اشتباه رخ داده؟

soroush.taheri
جمعه 14 دی 1397, 16:19 عصر
دوستان مشکل حل شد. مقادیر x و y جابجا جایگذاری شده بودن.