Больше результатов:

аюсь взять изображение ниже, отследить белую фигуру и экспортировать полученный путь в PDF. У меня проблема в том, что findContours, кажется, находит только точки вдоль края фигуры. Есть ли какое-то решение, похожее на findContours, которое обнаруживает кривые в форме и заменяет свои точки сплайном, где бы ни была кривая? Если я использую scipy.interpolate, он игнорирует прямые линии и превращает весь контур в одну большую изогнутую форму, что тоже не годится. Мне нужно что-то, что делает обе вещи.

import numpy as np
import cv2
from scipy.interpolate import splprep, splev
from pyx import *
import matplotlib.pyplot as plt

#read in image file                                                             
original = cv2.imread('test.jpg')

#blur the image to smooth edges                                                 
im = cv2.medianBlur(original,5)

#threshold the image                                                            
imgray = cv2.cvtColor(im,cv2.COLOR_BGR2GRAY)
ret,thresh = cv2.threshold(imgray,170,255,cv2.THRESH_BINARY)                                                             

#findContours                                                                   
im2, contours, hierarchy = cv2.findContours(thresh,cv2.RETR_EXTERNAL,cv2.CHAIN_\
APPROX_SIMPLE)

#drawContours
cv2.drawContours(original, [approx], -1, (0,255,0), 3)                          
cv2.imshow("Imageee", original)                                                 
cv2.waitKey(0)

Ответы на вопрос(3)

Ваш ответ на вопрос