Seite 1 von 1

Active Contour Kantendetektion

Verfasst: Dienstag 3. April 2018, 13:06
von edele17
Hallo zusammen,

für eine Kantendetektion möchte ich das "Active Contour Model" verwenden.
folgenden Programmcode habe ich dazu gefunden.

Code: Alles auswählen


img=cv2.imread("1.4301_20x_dunkel.png",0)
plt.imshow(img)
rows , cols=img.shape

s = np.linspace(0, 2*np.pi, 400)
x = 1250 +100*np.cos(s)
y = 750 + 100*np.sin(s)
init = np.array([x, y]).T



snake = active_contour(gaussian(img, 3),
                      init, alpha=-0.015, beta=10, gamma=0.001)

fig, ax = plt.subplots(figsize=(7, 7))
ax.imshow(img, cmap=plt.cm.gray)
ax.plot(init[:, 0], init[:, 1], '--r', lw=3)
ax.plot(snake[:, 0], snake[:, 1], '-b', lw=3)
ax.set_xticks([]), ax.set_yticks([])
ax.axis([0, img.shape[1], img.shape[0], 0])

http://scikit-image.org/docs/dev/auto_e ... tours.html

Das Problem an diesem Beispiel ist, dass es die Kanten in einem Kreis sucht. Für meine Anwendung benötige ich allerdings eine Ellipse und eine Rechteck.

Leider finde ich dazu nichts passendes.

Vielen Dank für eure Hilfe

Re: Active Contour Kantendetektion

Verfasst: Dienstag 3. April 2018, 15:56
von __deets__
Das ist doch einfach eine PCA ueber deine Kontourpunkte. Wahrscheinlich findet die unter der Haube sogar statt.

https://en.wikipedia.org/wiki/Principal ... t_analysis

Dazu findest du bestimmt auch was fuer numpy/scikit.

Re: Active Contour Kantendetektion

Verfasst: Dienstag 3. April 2018, 16:26
von __deets__
Vergiss was ich gesagt habe, ich glaube ich habe da was missverstanden.

Re: Active Contour Kantendetektion

Verfasst: Mittwoch 4. April 2018, 07:11
von EyDu
Ohne mir jetzt die Dokumentation anzuschauen: Zeilen 6 bis 9 sehen verdächtig danach aus was du suchst.

Re: Active Contour Kantendetektion

Verfasst: Mittwoch 4. April 2018, 07:31
von edele17
Hallo EyDu,
danke für deine Antwort.
In den Zeilen 6 bis 9 werden die Koordienaten für einen Kreis bestimmt.
Mein Problem ist das ich aber eine Ellipse und ein Rechteck benötige und ich leider nicht weis wie ich den Code dafür ändern muss.

Beste Grüße

Re: Active Contour Kantendetektion

Verfasst: Mittwoch 4. April 2018, 08:29
von edele17
Danke für eure Hilfe.
Konnte das Problem nun lösen