eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › Jak w obrysie wektorowym rozróżnić dwie komórki?
Ilość wypowiedzi w tym wątku: 6

  • 1. Data: 2014-10-13 13:05:57
    Temat: Jak w obrysie wektorowym rozróżnić dwie komórki?
    Od: Borneq <b...@a...hidden.pl>

    http://i.imgur.com/2bKIwFM.jpg
    Mam obrysy plam, które powstały z iteracyjnego floodFilla poprzez
    "cyrklowe" wyszukiwanie obrysu o które pytałem poprzednio.
    Zwykle mają mniej lub bardziej okrągły, wypukły kształt.
    Niektóre jednak obrysy (dwa zaznaczone na zielono) mają inny kształt -
    są wklęsłe, powstały z połączenia dwóch plam, dosyć krótki jest odcinek
    połączenia ich.
    Jak można mając wektor stwierdzić że kształt jest taki i najlepiej jak
    podzielić aby uzyskać dwie normalne komórki?


  • 2. Data: 2014-10-13 15:33:29
    Temat: Re: Jak w obrysie wektorowym rozróżnić dwie komórki?
    Od: Borneq <b...@a...hidden.pl>

    W dniu 2014-10-13 o 13:05, Borneq pisze:
    > Jak można mając wektor stwierdzić że kształt jest taki i najlepiej jak
    > podzielić aby uzyskać dwie normalne komórki?

    Można dać otoczkę wypukłą i zobaczyć o ile wzrośnie pole. Podział w
    najcieńszym miejscu ale jak to zrobić?


  • 3. Data: 2014-10-13 15:56:46
    Temat: Re: Jak w obrysie wektorowym rozróżnić dwie komórki?
    Od: "AK" <n...@n...com>

    Użytkownik "Borneq" <b...@a...hidden.pl> napisał:
    >W dniu 2014-10-13 o 13:05, Borneq pisze:
    >> Jak można mając wektor stwierdzić że kształt jest taki i najlepiej jak
    >> podzielić aby uzyskać dwie normalne komórki?
    >
    > Można dać otoczkę wypukłą i zobaczyć o ile wzrośnie pole. Podział w najcieńszym
    miejscu ale jak to
    > zrobić?

    Widze , ze Cie "przypililo" :)
    Nie bede sie silil juz w "mym wieku" nawet na podstawowa matematyke,
    wiec podam jedyne "beletrystyczny" pomysl jaki mi przychodzi do glowy:
    np cos w rodzaju minimalizacja sredniej(lub jakas inna funkcja)
    stosunku(ow) obwodu/powierzni czesci.
    Jesli sie zalozy apriori ilosc czesci (czyli np 2) to byc moze stac sie
    w miare proste do "algorytmizacji".

    PS: Nie mam juz nawet malych podstaw teoetycznych aby dyskutowac
    czy matematycznie ten pomysl ma sens. Potraktuj go wiec "as is"
    czyli wytwor wyobrazni a nie solidnej wiedzy (ta juz wyparowala na starosc:).
    PS1: A co na to np Pavlidis ?

    Pozdrawiam

    AK


    ---
    Ta wiadomość e-mail jest wolna od wirusów i złośliwego oprogramowania, ponieważ
    ochrona avast! Antivirus jest aktywna.
    http://www.avast.com


  • 4. Data: 2014-10-15 11:16:35
    Temat: Re: Jak w obrysie wektorowym rozróżnić dwie komórki?
    Od: Borneq <b...@a...hidden.pl>

    W dniu 2014-10-13 o 15:56, AK pisze:
    >> Można dać otoczkę wypukłą i zobaczyć o ile wzrośnie pole. Podział w
    >> najcieńszym miejscu ale jak to zrobić?

    > Jesli sie zalozy apriori ilosc czesci (czyli np 2) to byc moze stac sie
    > w miare proste do "algorytmizacji".

    Mam komórkę:http://i.imgur.com/R7HD8iR.jpg
    Można to zrobić w czasie kwadratowym, biorąc kolejno współrzędną i oraz
    j i patrzeć czy różnica odległości jest mała, ale trzeba by wyeliminować
    przypadki że j=i+1 i dlatego są blisko siebie


  • 5. Data: 2014-10-15 13:35:07
    Temat: Re: Jak w obrysie wektorowym rozróżnić dwie komórki?
    Od: bartekltg <b...@g...com>

    On 15.10.2014 11:16, Borneq wrote:
    > W dniu 2014-10-13 o 15:56, AK pisze:
    >>> Można dać otoczkę wypukłą i zobaczyć o ile wzrośnie pole. Podział w
    >>> najcieńszym miejscu ale jak to zrobić?
    >
    >> Jesli sie zalozy apriori ilosc czesci (czyli np 2) to byc moze stac sie
    >> w miare proste do "algorytmizacji".
    >
    > Mam komórkę:http://i.imgur.com/R7HD8iR.jpg
    > Można to zrobić w czasie kwadratowym, biorąc kolejno współrzędną i oraz
    > j i patrzeć czy różnica odległości jest mała, ale trzeba by wyeliminować
    > przypadki że j=i+1 i dlatego są blisko siebie

    "Obgryź" komórkę dookoła. Każdemu pikselowi przypisz odległość od
    krawędzi (liniowe względem liczby pikseli, można nieco przeskalować
    używając np co drugiego). Sprawdź, dla jakiego poziomu wyspy wystające
    nad nie są spójne. Miejsca połączenia zadają rozdzielającą
    kreskę (znajdujesz punkt, w którym nastąpiło połączenie, a potem
    polinii największego spadku w obu kierunkach).

    pzdr
    bartekltg



  • 6. Data: 2014-10-15 13:54:44
    Temat: Re: Jak w obrysie wektorowym rozróżnić dwie komórki?
    Od: Borneq <b...@a...hidden.pl>

    W dniu 2014-10-15 o 13:35, bartekltg pisze:
    > "Obgryź" komórkę dookoła. Każdemu pikselowi przypisz odległość od
    > krawędzi (liniowe względem liczby pikseli, można nieco przeskalować
    > używając np co drugiego). Sprawdź, dla jakiego poziomu wyspy wystające
    > nad nie są spójne. Miejsca połączenia zadają rozdzielającą
    > kreskę (znajdujesz punkt, w którym nastąpiło połączenie, a potem
    > polinii największego spadku w obu kierunkach).

    Na razie zrobiłem tak (może trzeba będzie przyśpieszyć bo liczę sqrt
    kwadratową liczbę razy)
    for i po wszystkich punktach
    dla każdego i ustawiam j od i+1 do i-1 w międzyczasie odejmując od niego
    n (liczbą wierzchołków)
    liczę odległość Punkt[i]-Punkt[j] <-------1
    liczę odległość obwodową między i a j
    liczę stosunek odległosci liniowe do obwodowej
    Wybieram te i oraz j dla których ten stosunek jest najmniejszy
    Uwaga: czasem dla "wygryzionego" kształtu napotyka odległość
    Punkt[i]-Punkt[j] = 0 i wtedy bierze to pod uwagę zamiast lepszego
    miejsca gdzie odległość obwodowa jest większa, tu wystarczy do
    odległości dodawać niewielkie delta, nawet delta=1 piksel jest w porządku
    Na razie działa, n jest rzędu kilkudzięsięciu, poza tym kilkadziesiąt
    kształtów (ale znacznie mniej kształtów, które trzeba dzielić - dzielę
    wtedy gdy wypukła otoczka dużo zwiększa pole wielokąta), tak bardzo nie
    przeszkadza czas kwadratowy

    Pozdrawiam

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: