Перейти к содержимому
Compvision.ru

Sigmoid

Пользователи
  • Количество публикаций

    6
  • Зарегистрирован

  • Посещение

Репутация

0 Новичек

О Sigmoid

  • Звание
    Новичок
  • День рождения 16.08.1994

Profile Information

  • Пол
    Мужской
  • Расположение
    Санкт Петербург
  1. Форма детали всегда разная , идея в том чтобы программа проверяла размеры изделия, с длинной я разобрался, а с конусом я застрял, необходимо проверять чтобы центр правой вершины был по центру а высота треугольника была не меньше 0.55мм
  2. Здравствуйте , подскажите как добавить координаты на линии сгибов контура отмеченные желтыми стрелками, что бы в дальнейшем измерять евклидово расстояние между координатами Пока только получилось найти экстремальные точки
  3. Благодарю!
  4. Получилось, но при повороте объекта центр фрейма слетает с центра объекта( Как можно нарисовать контур именно в центре объекта ? В силу моего незнания - долго искал выход найти середину фрейма, вроде получилось с помощью cv2.rectangle (frame,(x,y),(x+w*1,y+h//2),(255,255,0),2)
  5. Есть информация когда печатаю print(frameWidth) - в консоли выводит сообщение ширины "640", Так вот эту информацию 640 нужно вывести непосредственно над синей рамкой контура, И ещё я не знаю как найти центроид в контуре в виде линии которая будет рисовать ось. Буду рад любой информации
  6. помогите пожалуйста с выводом информации над контуром рамки, как отобразить размер рамки, если известно что размер товара 670 пикселей, длина физ 4,1 мм, и как провести центр оси на объект? opencv версии 4.7.0.68, отредактируйте код. ажение текста над рамкой Задать вопрос спросил Cегодня Изменено сегодня Просмотрено 15 раз -1 помогите пожалуйста с выводом информации над контуром рамки, как отобразить размер рамки, если известно что размер товара 670 пикселей, длина физ 4,1 мм, и как провести центр оси на объект? opencv версии 4.7.0.68, отредактируйте код. import numpy as np import cv2 cap = cv2.VideoCapture ( 1 ) kernel = np.ones ( (2 , 2) , np.uint8 ) while (True): # Capture frame-by-frame ret , frame = cap.read () # Our operations on the frame come here gray = cv2.cvtColor ( frame , cv2.COLOR_BGR2GRAY ) gray = cv2.GaussianBlur ( gray , (7 , 7) , 0 ) gray = cv2.medianBlur ( gray , 5 ) # to remove salt and paper noise # to binary ret , thresh = cv2.threshold ( gray , 128 , 128 , 128 ) # to detect white objects # to get outer boundery only thresh = cv2.morphologyEx ( thresh , cv2.MORPH_GRADIENT , kernel ) # to strength week pixels thresh = cv2.dilate ( thresh , kernel , iterations = 1 ) im2 = contours , hierarchy = cv2.findContours ( thresh , cv2.RETR_EXTERNAL , cv2.CHAIN_APPROX_SIMPLE ) if len ( contours ) > 0: cv2.drawContours ( frame , contours , -1 , (0 , 255 , 0) , 3 ) # find the biggest countour (c) by the area c = max ( contours , key = cv2.contourArea ) x , y , w , h = cv2.boundingRect ( c ) # draw the biggest contour (c) in green cv2.rectangle ( frame , (x , y) , (x + w , y + h) , (255 , 0 , 0) , 2 ) # Display the resulting frame cv2.imshow ( 'frame' , frame ) if cv2.waitKey ( 27 ) & 0xFF == ord ( 'q' ): break # When everything done, release the capture cap.release () cv2.destroyAllWindows ()
×