0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
1

Обводка объекта точками в OpenCV

31.10.2020, 22:38. Показов 2480. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте,только открыл для себя OpenCV.Задача такова:будут объекты на белом фоне,хочу обвести объект максимальным количеством точек .Написал код,но не знаю что не так,кто шарит,подскажите,если несложно.


Пример:
https://ibb.co/PjZQSPf


Пишу в colab

Python
1
2
3
4
5
6
7
8
9
10
11
import cv2 as cv
import numpy as np
from google.colab.patches import cv2_imshow
 
import numpy as np
import cv2 as cv
im = cv.imread('1.jpg')
imgray = cv.cvtColor(im, cv.COLOR_BGR2GRAY)
ret, thresh = cv.threshold(imgray, 127, 255, 0)
contours, hierarchy = cv.findContours(thresh, cv.RETR_TREE, cv.CHAIN_APPROX_SIMPLE)
cv2_imshow(im)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.10.2020, 22:38
Ответы с готовыми решениями:

Обводка объекта
Возможно ли нарисовать обводку объекта, при условиях, что нельзя использовать шейдеры и сам объект...

Обводка 3D объекта при наведении
Доброго времени суток. Хочу сделать, чтобы при наведении на 3D объект была его обводка. Сделал...

Обводка объекта с использованием шейдера
Есть игра, в которой я могу определить, когда начинает / заканчивает рисоваться нужный мне объект и...

Определение расстояния до объекта OpenCV
Добрый день. При выполнении лабораторной работы по физике возникла проблема. Есть установка,...

1
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
01.11.2020, 18:23  [ТС] 2
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import cv2
import numpy as np
import matplotlib
 
def viewImage(image):
 cv2.namedWindow('Display', cv2.WINDOW_NORMAL)
 cv2.imshow('Display', image)
 cv2.waitKey(0)
 cv2.destroyAllWindows()
 
 
image = cv2.imread('name.jpg')
hsv_img = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
blue_low = np.array([100,150,0] )
blue_high = np.array([140,255,255])
curr_mask = cv2.inRange(hsv_img, blue_low, blue_high)
hsv_img[curr_mask > 0] = ([140,255,250])
RGB_again = cv2.cvtColor(hsv_img, cv2.COLOR_HSV2RGB)
gray = cv2.cvtColor(RGB_again, cv2.COLOR_RGB2GRAY)
ret, threshold = cv2.threshold(gray, 90, 255, 0)
 
contours, hierarchy = cv2.findContours(threshold,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
cv2.drawContours(image, contours, -1, (0, 0, 255), 3)
viewImage(image)
пока что то такое,но это обводка,а хотелось бы пометить сам рисунок точками
0
01.11.2020, 18:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.11.2020, 18:23
Помогаю со студенческими работами здесь

Opencv определение положения объекта
Мне нужно определить положение выделенного объекта. Я использовал исходник(cMatchTemplate) в нем...

Определение положения объекта на изображении OpenCV
Есть определённое изображение на котором нужно найти конец прямой и понять между какими контурами...

Opencv, детектирование появления объекта на web странице
Всем доброго времени суток и заранее спасибо, за Ваше понимание и помощь. Суть: В цикле (задержки...

Выделение контура объекта на изображении точками
Добрый день. Нашел код как выделить контур объекта градиентным методом. using System; using...

Автоматическое фото от android смартфона с максимальным разрешением, при обнаружении объекта opencv
Приветствую всех. Пишу приложение под android, которое с помощью opencv и с++ на preview...

Считывание объекта из "XML" файла (OpenCV)
Есть объект IplImage* bin; Загрузил я его в файл "XML" при помощи функции cvWrite(fs,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru