Jump to content
Compvision.ru

ColaClassic

Пользователи
  • Content count

    11
  • Joined

  • Last visited

Community Reputation

0 Новичек

1 Follower

About ColaClassic

  • Rank
    Бывалый
  1. Вы правы. Много того, о чём здесь писали знающие люди, я не понял) Т.к. в компьютерном зрении я тотал новичок. Прям совсем никогда и ни разу не сталкивался с этим. Это всё выливается, пока что, в мою мини-научную работу, так скажем. Сроки поджимают уже, поэтому я хотел в самом что ни на есть простейшем виде реализовать хотя бы поиск трещин. Для этого я попробую изучить фильтр, который вы мне посоветовали. На сегодняшний момент удалось в довольно-таки сыром виде реализовать проверку на геометрическую форму, измерение геометрических размеров, нахождение углов. Я прям завидую вашим познаниям в ML Обладая такими же знаниями, я бы, наверное, за пару дней написал прогу требуемую
  2. LexaP, спасибо за совет. idrua, меня заинтересовал ваш второй способ) Попробую изучить данный фильтр. Надо глянуть реализован ли он на OpenCV, что-то не встречал такой. mrgloom, область по какому критерию искать? И в какой классификатор вставить потом? В какой-то сторонний, который раскидывает дефект на вид дефекта (скол, трещина, царапина и т.д.)? Я понимаю, что трудно предложить решение задачи, не имея при этом примерной картинки. Но дело в том, что я сам не знаю какого рода картинка должна быть. Мне чисто на словах описали суть проблемы (мол, нужно определять дефектованные плитки на их производстве). Вот я и стараюсь максимально нарыть информации по решению данного вопроса и попробовать хотя бы какой-нибудь макет накидать программы. Пусть он даже в реальности пока что не будет 10 из 10 дефектов ловить и идентифицировать. Хоть что-то. Пусть какой-то дефект не сильно заметный пропустит (не спалит), а другой более явный (внешне) заметит. p.s. определять какой конкретно дефект присутствует не требуется, нужно просто забраковать плитку, если нашёлся хоть какой-нибудь дефект (ну естественно ввести какие-то допустимые рамки + реализовать так, чтоб он случайный переход цвета не принимал за дефект)
  3. Наведите на путь истинный, пожалуйста. Пусть имеется какая-нибудь прямоугольная керамическая плитка. Камера направлена на неё вертикально вниз (перпендикулярно). Предположим, что она НЕ окрашена в какой-то однотонный цвет, а находится в процессе производства (т.е. её цвет примерно одинаково-однотонный, но естественно не без погрешностей - где-то темнее, где-то светлее участки). Задача найти на этой плитке какие-нибудь сколы, трещины или царапины. Можно выделить внешний контур этой плитки, а что потом? Как определить есть ли внутри этого контура какие-либо вышеописанные дефекты? Нужен наиболее простой, но в то же время действенный метод. У кого какие идеи?
  4. В примере выше рассказывается https://www.pyimagesearch.com/2016/03/28/measuring-size-of-objects-in-an-image-with-opencv/ . Да, этот способ и заключается в этом. Что на рассматриваемом изображении всегда будет какой-то эталонный предмет, длину\ширину которого мы заранее знаем в миллиметрах, например. При этом расстояние от камеры до искомого объекта тоже всегда постоянное будет. Если на изображении присутствует объект, размеры которого мы заранее знаем (померяли линейкой), то можно вычислить любой размер (неизвестный нам) объекта, который также присутствует на изображении.
  5. В том-то и дело, что камера за 100 рублей дешёвая, а не крутая и качественная. Вот две фотографии до корректировки дисторсии и после. Как считаете успешно ли прошла калибровка? Первая фото (сверху) - до, вторая (ниже) - после.
  6. Попробовал сделать так, как вы сказали. Вот к чему пришёл. Даже на тех фотографиях шахматной доски, которые я ещё не корректировал, практически не видно эффекта дисторсии. Все линии практически прямые. Если потом сравнить с изображением, прошедшим обработку, то практически не заметно разницы. Опять же: и до, и после линии практически прямые, поэтому я не понял успешно ли откалибровал свою камеру) Возможно я фоткаю свою доску слишком близко (расстояние от камеры до фотографируемой поверхности слишком мало). Дисторсия же увеличивается с увеличением расстоянием до фотографируемого изображения, если я правильно понимаю.
  7. Спасибо за ответы! Я вроде бы сделал калибровку, получил коэффициент искажения и даже, наверное, применил их (наверняка не понял как это делается, но вроде сделал), получилась новая картинка. Как я могу проверить: эта новая картинка без эффекта дисторсии получилась или всё та же косячная? Глазу не очень заметно, непонятно.
  8. Ну... в общем-то да. Находится фигура, выделяется её контур (findContours). И теперь у этой фигуры нужно найти уголки в градусах) Предлагаете геометрически рассчитывать как-то? Через синусы косинусы тангенсы? Можно, наверное, дорисовывать две прямые в треугольник и потом по отношению сторон расчёт сделать (но я не совсем хорошо знаю как это реализовать, видится довольно сложной задачей). А может быть есть более лёгкие способы нахождения углов? В общем хотелось бы ваше мнение услышать, как человека, разбирающего в этой теме
  9. Доброго времени суток, уважаемые знатоки, обитающие на данном форуме Хотел бы реализовать следующую задачу: нужно чтобы ВЕБ-камера смотрела на фигуры с четырьмя вершинами и проверяла, является ли фигура правильным прямоугольником. Т.Е. исключались трапеции, параллелограммы, и любые другие фигуры НЕ прямоугольники. Возможно, нужно каким-то образом находить углы у фигуры (если все четыре угла между сторонами равны +\- 90 градусов, то данная фигура является прямоугольником, иначе - мимо). Если у кого имеются мысли или примеры, буду премного благодарен!
  10. Большое спасибо за ответы! А как считаете, нужно ли проводить калибровку камеры для данной задачи? И если да, то как выполняется калибровка? С помощью шахматной доски? (Пока особо не изучал информацию по поводу калибровки, поэтому вообще не понимаю все ли калибровки выполняются с помощью шахматной доски, и зачем вообще нужно эта самая доска)
  11. Добрый день, уважаемые форумчане! Пару недель назад начал изучать библиотеку OpenCV. Возникла следующая задача: На столе лежит что-то прямоугольной формы. Над этим прямоугольником вертикально сверху (перпендикулярно) стоит камера, которая смотрит вниз на данную фигуру. Нужно каким-то образом измерить длину и ширину прямоугольника. Расстояние от камеры до фигуры константа. Допускается откалибровать камеру, подставив рядом какую-нибудь линейку известной длины. Фон нормальный контрастный. На данный момент перевел изображение в оттенки серого, немного размыл гауссовским blur'ом, выделил границы объекта с помощью функции Canny, обвёл прямоугольник контуром (cv2.drawContours). Делаю всё это на питоне 3.6.4, версия opencv третья. Кто сможет подсказать дальнейшие действия?
×