NO339362B1 - System og fremgangsmåte for approksimering av en redigerbar overflate - Google Patents

System og fremgangsmåte for approksimering av en redigerbar overflate Download PDF

Info

Publication number
NO339362B1
NO339362B1 NO20065397A NO20065397A NO339362B1 NO 339362 B1 NO339362 B1 NO 339362B1 NO 20065397 A NO20065397 A NO 20065397A NO 20065397 A NO20065397 A NO 20065397A NO 339362 B1 NO339362 B1 NO 339362B1
Authority
NO
Norway
Prior art keywords
points
point
value
new
stated
Prior art date
Application number
NO20065397A
Other languages
English (en)
Other versions
NO20065397L (no
Inventor
Sean A Spicer
Zitao Xu
Original Assignee
Landmark Graphics Corp A Halliburton Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Landmark Graphics Corp A Halliburton Co filed Critical Landmark Graphics Corp A Halliburton Co
Publication of NO20065397L publication Critical patent/NO20065397L/no
Publication of NO339362B1 publication Critical patent/NO339362B1/no

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Geometry (AREA)
  • Mathematical Optimization (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Numerical Control (AREA)
  • Image Generation (AREA)
  • Stored Programmes (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Description

Den foreliggende oppfinnelse vedrører systemer og fremgangsmåter for automatisk approksimering av en editerbar overflate fra et 3D-datasett eller 3D-punktsett, som kan avbildes i form av en NURBS-overflate.
Ikke-uniforme rasjonale B-splineflater (Non-Uniform Rational B-splines (NURBS)) er standard industriverktøy for fre mstilling og utforming av geometri. NURBS, som forklart av Markus Altmann på lwww. cs. wpi. edu/~ matt/ courses/ cs653/ talks/ nurbs. html anvendes for et utvalg av årsaker. De tilbyr en felles matematisk form for både standard analytiske figurer (feks. kjeglesnitt) og fri-form figurer. NURBS tilveiebringer fleksibiliteten til å utforme et stort utvalg av figurer, og kan beregnes forholdsvis hurtig ved hjelp av numerisk stabile og nøyaktige algoritmer. De er invariante under affine, så vel som perspektiviske transformasjoner, og er generaliseringer av ikke-rasjonale B-spliner, og ikke-rasjonale og rasjonale Bezier kurver og overflater.
I Schmålzle, Stephan Andreas. New methods for Nurbs surface approximation to scattered data. (2001), ihttps:// e- collection. library. ethz. ch/ view/ eth:23868| > omhandles en metode for tilnærming av parametriske kurver og overflater til gitter punkter i to-eller tre dimensjoner.
En av ulempene med NURBS er behovet for ekstra lagring for å definere tradisjonelle figurer (feks. sirkler). Dette følger av ekstra parametere i tillegg til kontrollpunktene, men vil tillate den ønskelige fleksibiliteten for å definere parametriske figurer. NURBS-figurer defineres ikke bare ved hjelp av kontrollpunkter, det er også nødvendig med vekter tilhørende hvert kontrollpunkt. En eksempelvis NURBS-kurve C(u), som er en vektor stykkevis rasjonal polynomfunksjon, kan defineres som:
hvor
Wi = vekter
Pi = kontrollpunkt (vektor)
Ni,k= normalisert B-spline basisfunksjon av grad k.
B-Splinene er definert rekursivt som:
hvor t; er knutene som danner en knutevektor og
Knutevektoren
Knutevektoren bestemmer B-splinene unikt som vist ovenfor relativt til ligning (2). Relasjonen mellom antallet knuter (m+1), graden (k) av N;,kog antallet kontrollpunkt (n+1) er gitt ved m = n + k + 1.
Følgen av knuter i knutvektoren U antas å være ikke-minkende, dvs. t; <= t;+i. Hvert følgende knutepar representerer et intervall [t; <= t;+i) for parameterverdiene for å beregne et segment av en fasong.
For NURBS behøver ikke de relative parametriserte intervallene (knutelengde) å være de samme for alle fasongsegmentene, dvs. knutemellomrommene er ikke-uniforme, ledende til en ikke-periodisk knutevektor på formen:
hvor a og b gjentas med en multiplisitet k+1. En knutes multiplisitet påvirker knutens parametriske kontinuitet ved denne knuten. Ikke-periodiske B-spliner, som NURBS, er uendelig og kontinuerlig deriverbare innenfor knutelengden og k-M-1 ganger kontinuerlig deriverbar ved knuten, hvor M er knutens multiplisitet. I motsetning er en periodisk knutevektor U = {0, 1,..., n} k-1 ganger kontinuerlig deriverbar overalt. Med hensyn til NURBS knutevektoren sammenfaller knuteendepunktene (t; ,t;+i) med multiplisitet k+1 med endekontrollpunktene Po, Pn.
Siden knutemellomrommene kan være ikke-uniforme, er B-splinene ikke lengre de samme for hvert intervall [t; <= ti+i), og graden av B-splinen kan variere. Når en betrakter området med parametere som representeres av knutevektoren, bygger de forskjellige B-spliner opp kontinuerlige (overlappende) blandefunksjoner Ni,k(U), som definert i ligning (2), over hele parameterverdiområdet, som vist i tabell 1 nedenfor. Disse blandefunksjonene har de følgende egenskaper: 1 • Ni,k(u)>= 0, for alle i, k, u; 2. Ni,k(U) = 0, hvis u ikke er innenfor [t;, ti+k+i), betydende lokal støtte for k+1 knutelengde, hvor Ni,k(U) er ikke-null; 3. Hvis u er innenfor [t;, ti+i), er den ikke-forsvinnende blandefunksj onen Ni.k,k(u), • • Ni,k(U); 4. Sum (j=i-k, i){Nj,k(U)} = sum(i=0, n){Ni;k(U)} = 1, (enhetsfordelt); og
5. I tilfellet flere knuter, ansees 0/0 å være null.
Den første og fjerde egenskapen, som vist i tabell 2 nedenfor, resulterer sammen i en konveks belg. Flersegmentlinjen av kontrollpunkter bygger opp en fasong definert av en NURBS-kurve. Den andre og tredje egenskapen viser at k+1 følgende kontrollpunkt definerer et fasongsegment, og at et kontrollpunkt tar del i k+1 tilgrensende fasongsegmenter. Å endre et kontrollpunkt eller vekt påvirker derfor k+1 fasongsegmenter, definert over intervallet gitt i ligning (2).
Kurve-/overflatedefinisj on
Den tidligere definisjonen av en NURBS-kurve i ligning (1) kan omskrives ved hjelp av rasjonale basisfunksjoner:
En NURBS-overflate kan defineres på en tilsvarende måte:
S(u, v) = sum(i = 0, n)sum(j=0, m) Py<*>Ri,kj,i(u,v) hvor
De rasjonale basisfunksj onene har de samme egenskapene som blandefunksj onene. Et poeng som må fremheves er deres invarians under affine og (til og med) perspektiviske transformasjoner. Derfor er det bare nødvendig å transformere kontrollpunktene for å oppnå den egnede transformasjonen av NURBS-fasongen.
Regnealgoritme
NURBS kan beregnes effektivt ved å bruke homogene koordinater. De følgende trinn viser en fremgangsmåte for å utføre beregningen: 1. Legg til en dimensjon til kontrollpunktene ( f. eks., P = (x, y) -> P'(x, y, 1)) og multipliser dem med deres tilhørende vekter, dvs., i 2D: Pi(Xi;yi) -> Pi{w;
<*>x;; w;<*>y;, w;)
2. Regn ut NURBS i homogene koordinater:
3. Avbild "homogen" NURBS tilbake i det opprinnelige koordinatsystemet med:
For u i [ti, ti+i) er den eneste eksisterende blandefunksj onen å tenke på i beregningen av kurven ved u, Ni-k,k(u), • Ni,k(U) • En effektiv algoritme for å beregningen av den ikke-forsvinnende blandefunksj onen beskrives i C. deBoor, "A Practical Guides to Splines," 1978, New York, Springer-Verlag.
Vektene
Som nevnt ovenfor, å endre vekten w; til et kontrollpunkt P; påvirker bare området [t;, ti+i) (i tilfellet en kurve). Den geometriske betydningen av vektene illustreres i tabell 3 nedenfor.
Definerer punktene:
N og B; kan også uttrykkes som: hvor
Den følgende identitet oppnås fra utrykkene aogb :
som kalles kryss- eller dobbeltforholdet av punktene P;; B, N, B;. Fra disse uttrykkene kan virkningen av fasongmodifikasjon utledes:
• B; stryker langsmed et rett linjesegment.
• HvisWi=0 påvirker P; ikke fasongen
• Hvis w; øker, så trekkes b og kurven mot P; og skyves fra Pj, for j ikke= 1.
• Hvis w; minker, så skyves b og kurven fra P; og trekkes mot Pj, for j ikke= 1.
• Hvis w;-> uendelig, så b-> 1 og B;-> P; hvis u er i [t;, t;+i).
Problemet
Forskjellige teknikker er blitt utprøvd for å danne NURBS-overflater i forskjellige fagområder. For eksempel, i internasjonal publikasjon WO 02/37422 og US patent 6.765.570, begge inkorporert med referanse dertil, foreslås forskjellige teknikker for manuell frembringelse av redigerbare (NURBS) overflater anvendt i analyse og for-tolkning av seismiske hendelser. Andre konvensjonelle anvendelser foreslår å danne redigerbare (NURBS) overflater ved hjelp av i faget velkjente interpolasjonsteknikker. Slike teknikker kan omtales som en "eksakt-tilpassing"-metode for å bestemme en redigerbar overflate. En eksakt-tilpasningsmetode gjengir mer sannsynlig en mindre uniform, om ikke ikke-uniform, redigerbar overflate sammenlignet med en "beste-tilpassing" approksimasjon av den redigerbare overflaten. Dessuten kan eksakt-tilpasningsmetoden for å definere en redigerbar NURBS-overflate være upraktisk, eller i det minste økonomisk uoverkommelig, for store 3D-datasett en ofte møter på i analysen av seismiske data.
Andre konvensjonelle fremgangmåter for å omregne uordnede punkt til overflater beskrives generelt i Shephard, D., "A two dimensional interpolation function for irregular spaced data", 1968, side 517-524, Proceedings 23rd ACM National Conference. En velkjent fremgangsmåte for å interpolere spredte punkt definerer en overflateverdi basert på gitte punkt og vektefunksjoner. Selv om resultatet er forholdsvis grovt har den grunnleggende ideen inspirert mange andre fremgangsmåter.
En annen velkjent fremgangsmåte, vanligvis omtalt som "tynn plate spline", er innarbeidet i medisinsk avbildningsanvendelser og er i stand til å nøyaktig føre måloverflaten slik at den går gjennom alle gitte punkt. Se Hardy, R. L. Desmarrais, R. N., "Interpolation using surface splines," 1972, side 189-197, Journal of Aircraft 9 og Dyn, N., "Interpolation in Scattered Data by Radial Functions," 1987, side 47-61 i Chui, C.K; Schumaker, L.L.; Ultreres, F.I. (red) Topics in Multivariate Approximation. Denne teknikken krever imidlertid invertering av store matriser, som er tunge å beregne og generelt upraktisk for et stort antall innmatningspunkter, som muligens bare krever en beste-tilpassings approksimasjon.
En annen konvensjonell fremgangsmåte for å omregne en punktsky til en overflate beskrives i Hoppe, H., et al, "Surface Reconstruction from Unorganized Points," 1992, side 71-78, Comput. Graph. 26. Denne fremgangsmåten forutsetter imidlertid at innmatningspunktene er jevnt fordelt over hele domenet, hvilket også er upraktisk for innmatningspunkt som ligger tett i noen områder og er ikke-eksisterende i andre områder.
Det finnes derfor et behov for automatisk approksimering av en redigerbar overflate fra et 3D-datasett eller 3D-punktsett innbefattende et stort kvantum uordnede og/eller ustrukturerte datapunkt, som kan avbildes i form av en redigerbar NURBS-overflate.
Den foreliggende oppfinnelse imøtekommer de ovenfor nevnte behov, og overkommer en eller flere mangler i det foregående ved å tilveiebringe systemer og fremgangsmåter for automatisk å approksimere en redigerbar overflate fra et 3D-datasett eller et 3D-punktsett, som kan innbefatte et stort kvantum ustrukturerte og/eller uordnede datapunkt.
I en utførelsesform innbefatter den foreliggende oppfinnelsen et system for å approksimere en redigerbar overflate fra et 3D-datasett, innbefattende et datamaskinlesbart minnemedium konfigurert for å lagre et program eller instruksjoner i stand til å være eksekverbare for å implementere, i) å velge et punktsett fra 3D-datasettet, ii) å bestemme et beste-tilpasningsplan for punktsettet, iii) å projisere minst én del av punktsettet på beste-tilpasningsplanet, iv) å bestemme en grense for beste-tilpasningsplanet i henhold til det projiserte punktsettet, v) å projisere et rutenett på beste-tilpasningsplanet innenfor grensen, der rutenettet består av et flertall av krysningspunkt, vi) å gi krysningspunktene en startverdi, vii) å bestemme en verdi for minst én del av krysningspunktene, viii) å velge minst én del av krysningspunktene med en verdi, og ix) å avbilde den redigerbare overflaten ved å bruke minst én del av de valgte krysningspunktene.
I en annen utførelsesform innbefatter den foreliggende oppfinnelsen et system for å approksimere en redigerbar overflate fra et 3D-punktsett, innbefattende et datamaskinlesbart minnemedium konfigurert for å lagre et program eller instruksjoner i stand til å være eksekverbare for å implementere, i) å bestemme et beste-tilpasnings-plan for punktsettet, ii) å projisere punktsettet på beste-tilpasningsplanet, iii) å bestemme en grense for beste-tilpasningsplanet i henhold til punktsettet, iv) å projisere et rutenett på beste-tilpasningsplanet innenfor grensen, der rutenettet består av et flertall av krysnings punkt, v) å sette krysningspunktene til null, vi) å bestemme en verdi for krysningspunktene, vii) forfine verdien for minst én del av krysningspunktene, viii) å velge minst én del av krysningspunktene basert på én av verdien og den forfinede verdien, og ix) avbilde den redigerbare overflaten ved å bruke de valgte krysningspunktene, der den redigerbare overflaten fremstiller en beste-tilpasnings-approksimasjon av punktsettet til den redigerbare overflaten.
I en annen utførelsesform innbefatter den foreliggende oppfinnelsen en fremgangsmåte for å approksimere en redigerbar overflate fra et 3D-datasett, innbefattende trinnene: i) å velge et punktsett fra 3D-datasettet, ii) å bestemme et beste-tilpasningsplan for punktsettet, iii) å projisere minst én del av punktsettet på beste-tilpasningsplanet, iv) å bestemme en grense for beste-tilpasningsplanet i henhold til det projiserte punktsettet, v) å projisere et rutenett på beste-tilpasningsplanet innenfor grensen, der rutenettet består av et flertall av krysningspunkt, vi) å gi krysningspunktene startverdi, vii) å bestemme en verdi for minst én del av krysningspunktene, viii) å velge minst én del av krysningspunktene med en verdi, og ix) å avbilde den redigerbare overflaten ved å bruke minst én del av de valgte krysningspunktene.
I enda en utførelsesform innbefatter den foreliggende oppfinnelsen en fremgangsmåte for å approksimere en redigerbar overflate fra et 3D-punktsett, innbefattende trinnene: i) å bestemme et beste-tilpasningsplan for punktsettet, ii) å projisere punktsettet på beste-tilpasningsplanet, iii) å bestemme en grense for beste-tilpasningsplanet i henhold til punktsettet, iv) å projisere et rutenett på beste-tilpasningsplanet innenfor grensen, der rutenettet består av et flertall av krysningspunkt, v) å sette krysningspunktene til null, vi) å bestemme en verdi for krysningspunktene, vii) forfine verdien for minst én del av krysningspunktene, viii) å velge minst én del av krysningspunktene basert på én av verdien og den forfinede verdien, og ix) avbilde den redigerbare overflaten ved å bruke de valgte krysningspunktene, der den redigerbare overflaten fremstiller en beste-tilpasnings approksimasjon av punktsettet til den redigerbare overflaten.
Disse og andre formål, trekk og fordeler ifølge den foreliggende oppfinnelse vil bli tydelige for de med kunnskap i faget fra den følgende beskrivelsen av de forskjellige utførelsesformer og tilhørende tegninger.
Den foreliggende oppfinnelsen beskrives nedenfor med henvisning til vedlagte tegninger, i hvilke like komponenter henvises til med like henvisningstall, og i hvilke:
Fig. 1 er et blokkdiagram som viser en utførelsesform av et program for å implementere den foreliggende oppfinnelsen. Fig. IA er et riss som i alminnelighet viser dataflyten inn i approksimeringsmodulen vist i fig. 1. Fig. 2 er et flytskjema som illustrerer en utførelsesform ifølge en fremgangsmåte for å implementere den foreliggende oppfinnelsen.
Fig. 3 illustrerer trinn 212 fra fig. 2.
Fig. 4 illustrerer trinn 216 og trinn 218 i fig. 2.
Fig. 5 illustrerer trinn 220 og trinn 222 i fig. 2.
Fig. 5 A illustrerer trinn 224 i fig. 2, og fremstiller området A fra fig. 5.
Fig. 6 illustrer trinn 228, trinn 230 og trinn 232 fra fig. 2.
Fig. 7 illustrerer trinn 236 og trinn 238 fra fig. 2.
Fig. 8 er et bilde som illustrerer innmatningsdatapunktene anvendt for å approksimere den redigerbare overflaten avbildet i trinn 240 fra fig. 2.
Fig. 9 er et annet perspektiv av en del av bildet fra fig. 8.
Fig. 10 er et annet perspektiv av den del av bildet fra fig. 9.
Gjenstanden ifølge den foreliggende oppfinnelsen beskrives med særpreg, likevel er beskrivelsen selv ikke ment å begrense omfanget av oppfinnelsen. Gjenstanden det gjøres krav på kan således utføres på andre måter, til å innbefatte forskjellige trinn eller kombinasjoner av trinn liknende de beskrevet heri, i forbindelse med andre nåværende og fremtidige teknologier. Dessuten, selv om betegnelsen "trinn" brukes heri til å inneholde forskjellige komponenter av anvendte fremgangsmåter, skal betegnelsen ikke tolkes som å innebære noen særskilt rekkefølge blant eller mellom trinn beskrevet heri, med mindre og unntatt når rekkefølgen for enkelte trinn uttrykkelig beskrives.
Den foreliggende beskrivelse tilveiebringer et forbedret system og fremgangsmåte for å analysere 3D-datasett og/eller 3D-punktsett. Beskrivelsen kan beskrives i den generelle rammen av datamaskineksekverbare programinstruksjoner, slik som programmoduler, kjørt på en datamaskin. Programmoduler innbefatter i alminnelighet rutiner, programmer, objekter, komponenter, datastrukturer etc, som utfører særskilte oppgaver eller implementerer særskilte abstrakte datatyper. Dessuten vil de med kunnskap i faget forstå at oppfinnelsen kan utøves med et utvalg av datamaskinsystemkonfigurasjoner, innbefattende håndholdte innretninger, flerprosessorsystemer, mikroprosessorbasert eller programmerbar forbrukerelektronikk, minidatamaskiner, stormaskiner og tilsvarende. Et hvilket som helst antall datamaskinsystemer og datamaskinnettverk er tillatelig ifølge den foreliggende oppfinnelsen. Oppfinnelsen kan utøves i et distribuert datamaskinsystem, der oppgaver utføres ved hjelp av fjerndatabehandlingsinnretninger som er forbundet gjennom et kommunikasjonsnettverk. I et distribuert datamaskinsystem kan programmoduler finnes i både lokale og fjerne datamaskinlagringsmedia innbefattende minneinnretninger. Datamaskinanvendbare instruksjoner danner et grensesnitt som tillatter en datamaskin å reagere i henhold til en innmatningskilde. Instruksjonene virker sammen med andre kodesegmenter for å sette i gang et utvalg av oppgaver som svar på data mottatt i forbindelse med kilden til de mottatte data.
Den foreliggende oppfinnelse kan derfor implementeres ved hjelp av maskinvare, programvare eller en kombinasjon derav, i datamaskinsystemer eller andre behandlings-systemer. Fig. 1 er et blokkdiagram som viser en utførelsesform av et programvare-program 100 for å implementere den foreliggende oppfinnelsen. I bunnen av programmet 100 ligger et operativsystem 102. Et passende operativsystem 102 kan innbefatte for eksempel et Windows® operativsystem fra Microsoft Corporation, eller andre operativsystemer som vil være åpenbare for en med kunnskap i det aktuelle faget.
Meny- og vindusprogramvare 104 ligger over operativsystemet 102. Meny- og vindusprogramvaren 104 anvendes for å tilveiebringe forskjellige menyer og vinduer for å lette samhandling med brukeren, og for å oppnå brukerinnmatning og instruksjoner. Som lett vil forstås av en med kunnskap i det aktuelle faget kan et hvilket som helst antall meny- og vindusprogramvareprogrammer anvendes i forbindelse med den foreliggende oppfinnelsen.
Et basisgrafikkbibliotek 106 ligger over meny- og vindusprogramvaren 104. Basisgrafikkbiblioteket 106 er et applikasjons-programmeringsgrensesnitt (API) for datamaskingrafikk. Funksjonene som utføres av basisgrafikkbiblioteket 106 kan eksempelvis innbefatte enkle geometri- og rasterfunksjoner, RGB A eller fargeindeks-modus, display-liste eller direktemodus, vindus- eller utformingsomforming, lys- og skyggelegging, fjerning av skjult overflate, alfablanding (gjennomskinnelighet), antialiasing, strukturavbildning, tilbakekobling og seleksjon, stensilplan, og akkumul asj onsbuffer.
En gjengjvelsesapplikasjon 108 ligger over basisgrafikkbiblioteket 106. Som vil forstås av de med kunnskap i faget kan gjengivelsesapplikasjonen 108 innbefatte et verktøysett for 2D/3D seismisk datafortolkning, innbefattende både interaktiv horisont- og forkastninghåndtering, 3D visualisering, og egenskapsanalyse. For eksempel er Landmark Graphics Corporation sin SeisVisio™ plattform en seismisk gjengjvelsesapplikasjon egnet for den foreliggende oppfinnelse.
Approksimasjonsmodulen 110 ligger over de andre komponentene fra program 100. Approksimasjonsmodulen 110 er konfigurert for å samvirke med 3D-datasett som beskriver forhåndsbestemte objekter, slik som eksempelvis horisonter og forkastninger eller 3D-punktsett innbefattende vilkårlige og/eller ustrukturerte datapunkt. På en måte velkjent i faget har approksimeringsmodulen 110 grensesnitt mot, og utnytter funksjonene utført av gjengivelsesapplikasjonen 108, basisgrafikkbiblioteket 106, meny- og vindusprogramvaren 104, og operativsystemet 102. Approksimasjonsmodulen 110 kan skrives i et objektorientert programmeringsspråk, slik som for eksempel C++, for å tillate dannelse og bruk av objekter og objektfunksjonalitet.
Programmet 100 illustrert i fig. 1 kan utføres eller implementeres gjennom bruken av datamaskinsystemer som innarbeider programmet 100 og forskjellige maskinvare-komponenter. Maskinvarekomponenten kan innbefatte for eksempel en prosessor, minne (feks. direkteminne og/eller ikke-flyktige minneinnretninger), en eller flere innmatningsinnretninger, en eller flere skjermvisningsinnretninger, og en eller flere grensesnittinnretninger. Disse maskinvarekomponentene kan sammenkobles i henhold til et utvalg av konfigurasjoner. Ikke-flyktig minneinnretninger kan innbefatte for eksempel innretninger slik som magnetbånddrev, diskdrev, halvleder ROM eller EEPROM. Innmatningsinnretninger kan innbefatte for eksempel innretninger slik som et tastatur, en mus, et digitaliseringsbord, en styreball, en berøringsfølsom plate og/eller en lyspenn. Skjermvisningsinnretninger kan innbefatte for eksempel innretninger slik som skjermer, prosjektører og/eller hodemonterte skjermer. Grensesnittinnretninger kan konfigureres til å kreve digitale bildedata fra én eller flere innsamlingsinnretninger og/eller fra én eller flere fjerndatamaskiner eller fjernlagringsinnretninger gjennom et nettverk.
Et hvilket som helst utvalg av innsamlingsinnretninger kan anvendes avhenging av objekttypen som avbildes. Innsamlingsinnretningen(e) kan avføle forskjellige typer mekanisk energi (feks. akustisk energi, fortrengning og/eller spenning/tøyning) og/eller elektromekanisk energi (feks. lysenergj, radiobølgeenergj, strøm og/eller spenning).
En prosessor kan konfigureres til å omprogrammere instruksjoner og/eller data fra RAM og ikke-flyktige minneinnretninger, og til å lagre beregningsresultater i RAM og/eller ikke-flyktige minneinnretninger. Programinstruksjoner instruerer prosessoren til å behandle 3D-datasettene og/eller 3D-punktsettene basert på fremgangsmåtene beskrevet heri. Innmatningsdataene kan tilveiebringes til datamaskinsystemet gjennom et utvalg av mekanismer. Eksempelvis kan innmatningsdata innhentes inn i ikke-flyktig minne og/eller RAM ved hjelp av én eller flere grensesnittinnretninger. I et annet eksempel kan innmatningsdata leveres til systemet gjennom et minnemedium, slik som en disk eller et bånd, som lastes på/inn i det ikke-flyktige minnemediet. I dette tilfellet er innmatningsdataene tidligere blitt skrevet til minnemediet.
Det bemerkes at innmatningsdataene ikke nødvendigvis er sensor rådata oppnådd ved hjelp av innsamlingsinnretningen. For eksempel kan innmatningsdataene være resultatet av én eller flere behandlingsoperasjoner som bruker et sensor rådatasett. Behandlings-operasjonen(e) kan utføres av datamaskinsystemet og/eller én eller flere datamaskiner.
Fremgangsmåten ifølge den foreliggende oppfinnelsen kan realiseres i én eller flere programvarer eller moduler, som er lagret på en hvilken som helst av et utvalg av minnemedia, slik som CD-ROM, magnetisk disk, boblelager, halvlederminne (feks. en hvilken som helst av et utvalg typer RAM eller ROM). Videre kan programvaren(e) og/eller resultatene derav, sendes over et uvalg av bæremedia, slik som optiske fibere, metalliske tråder, fritt rom, og gjennom et hvilket som helst av et utvalg av nettverk slik som internettet.
I fig. IA kan for eksempel et 3D-datasett 112 innbefatte et hvilket som helst forhåndsbestemt objekt, slik som for eksempel geoanomalier, geolegemer, horisonter, forkastninger og/eller andre overflater, eller et hvilket som helst 3D punkt sett innbefattende vilkårlige og/eller ustrukturerte datapunkt. 3D-datasettet 112 kan, om nødvendig, omregnes til et 3D-punktsett 114. Hele 3D-punktsettet 114, eller deler derav, kan velges fra det omregnede 3D-datasettet 112 før behandling av approksimeringsmodulen 110 for oppnå et bilde av en redigerbar overflate.
Nå med henvisning til fig. 2, som viser en fremgangsmåte 200 for å approksimere et bilde av en redigerbar overflate fra et 3D-datasett eller et 3D-punktsett.
I trinn 202 kan et 3D-datasett brukes til å innmate forhåndsbestemte objekter eller 3D-punktsett innbefattende vilkårlige og/eller ustrukturerte datapunkt.
I trinn 204 kan et objekt, slik som for eksempel geoanomalier, geolegemer, horisonter, forkastninger og/eller andre overflater, velges fra 3D-datasettet. Slike objekter kan forhåndsbestemmes ved hjelp av i faget velkjente avbildningsteknikker.
I trinn 206 omregnes det valgte objektet til et 3D-punktsett ved hjelp av i faget velkjente omregningsteknikker. Det omregnede 3D-punktsettet innbefatter vilkårlige og/eller ustrukturerte datapunkt samsvarende med de opprinnelige datapunktene innbefattet i det opprinnelige 3D-datasettet. 3D-punktsettet kan derfor innbefatte vilkårlige og/eller ustrukturerte datapunkt som danner en vilkårlig overflate.
I trinn 208 kan et 3D-punktsett velges fra det opprinnelig innmatede 3D-datasettet (trinn 202) eller det omregnede 3D-punktsettet (trinn 206), som kan innbefatte alle datapunktene fra det opprinnelige innmatede 3D-datasettet eller en del derav. Derfor innbefatter det valgte 3D-punktsettet vilkårlige og/eller ustrukturerte datapunkt samsvarende med minst én del av de opprinnelige datapunktene innbefattet i det opprinnelige 3D-datasettet.
I trinn 210 analyseres 3D-punktsettet valgt i trin 208 for å bestemme hvorvidt det inneholder en dominant (lang) akse. Hvis en dominant akse kan bestemmes for 3D-punktsettet så er det neste trinnet 212 unødvendig. For visse forhåndsbestemte objekter valgt i trinn 204 kan en dominant akse være åpenbar for en med kunnskap i faget.
I trinn 212 er en ellipsoide 304 tilpasset til 3D-punktsettet (punktsky) illustrert i fig. 3 ved hjelp av programmeringsmetoder velkjent i faget. Datapunktene 302 representerer 3D-punktsettet. Ellipsoiden 304 innbefatter tre hovedakser, som kan betegnes langaksen (Z), midtaksen (M) og kortaksen ( S). I tilfellet en perfekt sirkel, vil imidlertid alle de tre hovedaksene ha samme lengde. Ellipsoidens kortaksevektor 304 sammenlignes mot de universelle koordinataksene ( x, y, z) for å bestemme hovedretningen til et beste- tilpasningsplan, og derfor hvilken av de tre følgende fremstillinger som skal benyttes for å bestemme et beste-tilpasningsplan i trinn 214:
I trinn 214 bestemmes beste-tilpasningsplanet ved hjelp av minste kvadraters approksimasjon for å oppnå en beste-tilpasningsfunksjon. La for eksempel Tvære matrisen av n datapunkter innbefattende 3D-punktsettet, slik at:
LaMvære 4x4 matrisen dannet gjennom 7" • 7" hvor 7" er den transponerte av 7. Den minste kvadrater, beste-tilpassing, ligningen finnes ved å invertere matrisen Mved hjelp av LU-dekomposisjon, som gir koeffisientene A, B, C og D i den følgende ligningen, som kan brukes til å bestemme beste-tilpasningsplanet for datapunktene 302 innbefattende 3D-punktsettet.
I trinn 216 projiseres minst én del av datapunktene 302, innbefattende 3D-punktsettet, på beste-tilpasningsplanet 404 vist i fig.4 ved hjelp av programmeringsmetoder velkjent i faget. Desto flere datapunkter 302 som projiseres på beste-tilpasningsplanet 404, desto mer nøyaktig vil resultatet bli. Men antallet datapunkt 302 som projiseres på beste-tilpasningsplanet 404 kan likevel uansett bestemmes som et skjønnspørsmål. Datapunktene 302 projisert på beste-tilpasningsplanet 404 illustreres som projiserte datapunkt 402. De projiserte datapunktene 402 kan representeres i en parametrisk form z' = f( x ', y \ der x', y' og z' angir det ortogonale koordinatsystemet for beste-tilpasnings planet 404, x' og y' er rettet inn med beste-tilpasningplanet 404 og z' er perpendikulær på beste-tilpasningsplanet 404.
I trinn 218 bestemmes grenser for beste-tilpasningsplanet i henhold til datapunkt-yttergrenser, betydende de ytterste projiserte datapunktene 402.1 fig. 4 er beste-tilpasningsplanet 404 illustrert med grenser som er tydelige fra de ytterste projiserte datapunktene 402.
I trinn 220 projiseres et rutenett på det avgrensede beste-tilpasningsplanet 404 som vist i fig. 5 ved hjelp av programmeringsmetoder velkjent i faget. Rutenettet projisert på beste-tilpasningsplanet 404 kan representeres av N x M, der N og M er forhåndsbestemte rutenettparametere. De forhåndsbestemte rutenettparametrene (NxM) kan være like (N=M) eller ulike (N^M).
I trinn 222 settes hvert krysningspunkt 502, definert av et skjæringspunkt i rutenettet illustrert i fig. 5, til en første verdi, fortrinnsvis null. På denne måten kan en krysningspunktverdi bestemmes for hvert krysningspunkt 502 vist i fig. 5.
I trinn 224 kan verdien for hvert krysningspunkt 502 vist i fig.5 bestemmes ved å søke etter projiserte datapunkt 402 innenfor et forhåndbestemt område 5A. Desto flere krysningspunkt 502 som gis en verdi, desto mer nøyaktig vil resultatet bli. Men antallet krysningspunkt som skal gis verdi kan bestemmes som et skjønnspørsmål. Det forhåndsbestemte området 5A kan innbefatte hele settet med projiserte datapunkt 402 i beste-tilpasningsplanet 404, eller en delmengde derav. Det forhåndsbestemte området 5 A kan representeres av et foretrukket celle (node) antall samsvarende med rutenettets mellomrom. Et foretrukket celleantall på 16 kan for eksempel representeres som det 4 x 4 forhåndsbestemte området 5 A i fig. 5. Alternativt kan et foretrukket celleantall på 16 representeres som et 2 x 8 forhåndsbestemt område.
For hvert projisert datapunkt 402 innenfor det forhåndbestemte området 5A fastsettes og registreres en datapunktverdi (E;) med tilhørende avstand (d;) til krysningspunktet, som vist i fig. 5A. Krysningspunktverdien (G;) for krysningspunktet 502 kan bestemmes ved hjelp av den følgende normaliserte bidragsformel:
der Gi er krysningspunktverdien i hver krysningspunktposisjon 502, basert på datapunktverdiene (Ei) for hvert projisert datapunkt 402 innenfor det forhåndsbestemte området 5A og dets avstand (di) til krysningspunktet 502 som verdisettes. Formelen er gyldig for alle avstander (di) som ikke er lik null. For avstandene (di) som er lik null tildeles krysningspunktverdien (Gi) datapunktverdien (Ei), ettersom denne er nøyaktig kjent. I fig. 5 bestemmes krysningspunktverdien (Gi) for krysningspunktet 502 ved hjelp av datapunktverdiene (Ei, E2, E3, E4, E5) og deres respektive avstand (di, 62, dj, 64, ds) til krysningspunktet 502 som verdisettes. Den samme fremgangsmåten kan anvendes for å bestemme krysningspunktverdier for de gjenværende krysningspunktene 502 ved å forskyve det forhåndsbestemte området 5A på en slik måte at hvert krysningspunkt 502 gis verdi i den samme posisjonen innenfor det forhåndsbestemte området 5A. For krysningspunkt 502 som ligger i nærheten eller på beste-tilpasningsplanets 404 grenser bestemmes krysningspunktverdiene på samme måte, med unntak at det forhåndsbestemte området 5A delvis ligger utenfor beste-tilpasningsplanet 404 for å opprettholde krysningspunktets posisjon innenfor det forhåndsbestemte området 5A. Følgelig er det ingen projiserte datapunkt 402 å søke etter utenfor beste-tilpasningsplanet 404 av betydning for bestemmelsen av verdien til krysningspunkt 502 som ligger i nærheten eller på beste-tilpasningsplanets 404 grenser.
I trinn 226, etter alle krysningspunktverdiene (Gi) er bestemt, kan krysningspunkts-verdiene forfines på en måte som er beskrevet med henvisning til trinn 228 - 236.
I trinn 228 økes tettheten til rutenettet (feks. dobles) og nye krysningspunktverdier (Gi') for de nye krysningspunktene interpoleres lineært mellom de tidligere krysningspunktene 502 ved hjelp av de tidligere krysningspunktverdiene (Gi) og interpolerings-teknikker velkjent i faget.
I trinn 230 bestemmes flere nye (beste-tilpassing) plan ved hjelp av ligningene beskrevet med henvisning til trinn 214 og et forhåndsbestemt område, hvilket kan være det samme forhåndsbestemte området 5 A som vist i fig. 5. Med andre ord bestemmes (beregnes), for hvert projiserte datapunkt (402), et nytt (beste-tilpassing) plan for å passe de projiserte datapunktene 402 og det nye rutenettet innenfor det omliggende forhåndsbestemte område. Eksempelvis, i fig. 6 representerer x' inkrementet i rute-tetthet sammenlignet med det tidligere rutemellomrommet. Et nytt (beste-tilpassing) plan 602 går derfor gjennom det projiserte datapunktet 402A og et nytt krysningspunkt 606A innenfor det omliggende forhåndbestemte område. På samme måte passerer et nytt (beste-tilpassing) plan 604 gjennom projiserte datapunkt 402B og nye krysningspunkt 606B innenfor det omliggende forhåndsbestemte område. Dette trinnet forbedrer nøyaktigheten til interpoleringstrinnet utført i trinn 228, og bestemmer et nytt (beste-tilpassing) plan for hvert projiserte datapunkt 402.
I trinn 232 kan de nye interpolerte krysningspunktverdiene (G;') omberegnes ved å erstatte hvert nye interpolert krysningspunkt innenfor det forhåndsbestemte området med en ny omregnet krysningspunktverdi basert på et vektet gjennomsnitt av verdien for alle nye krysningspunkt som skjærer et nytt (beste-tilpassing) plan, der planet går gjennom det forhåndbestemte området og et projisert datapunkt innenfor det forhåndsbestemte området. I fig. 6 kan for eksempel omberegningsverdien for nye krysningspunkt 612 bestemmes ved å erstatte dets tidligere interpolerte verdi med det vektede gjennomsnittet av verdiene for nye krysningspunkt 606A, 606B som henholdsvis skjærer de nye (beste-tilpassing) planene 602, 604, der planene går gjennom det forhåndsdefinerte området og innbefatter henholdsvis de projiserte dataene 402A, 402B. I trinn 234 kan en gaussisk kjerne anvendes på hvert av de omberegnede nye krysningspunktene for å glatte de resulterende omberegnede nye krysningspunktene slik at de har en mer naturlig kontinuitet. Den gaussiske glattingen av de omberegnede krysningspunktverdiene kan utføres på en måte velkjent i faget. Forskjellige modifikasjoner til den gaussiske glattebehandlingen kan være åpenbare for de med kunnskap i faget og anvendes som nødvendig for å forbedre glattebehandlingen beskrevet heri.
I trinn 236 kan minst én del av de omberegnede nye krysningspunktverdiene ytterligere forfines ved å gå tilbake til trinn 222, og gjenta noen eller alle trinnene beskrevet hittil. Når trinn 224 gjentas reduseres det forhåndsbestemte området 5A trinnvis med en faktor 1, slik at det omliggende området i betraktning kan representeres som (4-1) x (4-1). Hvis krysningspunktverdiene imidlertid ikke forfines fortsetter fremgangsmåten til trinn 238. Tilsvarende, hvis krysningspunktene ikke forfines i henhold til trinn 226 kan fremgangsmåten forsette direkte til trinn 238.
I trinn 238 kan krysningspunktverdiene og/eller omberegnede nye krysningspunktverdier samples for kontrollpunkter. Samplingsmetoden velger simpelthen den siste gjentakelsen av fremgangsmåten beskrevet med henvisning til trinn 236 slik at den sist bestemte verdien kan velges som kontrollpunkt. I fig.7 kan for eksempel beste-tilpasningsplanet 700 innbefatte flere verdier for krysningspunkt 702 som kan beskrives som G;, G;, G;<2>... G". Tilsvarende kan for eksempel krysningspunktene 704, 706 og 708 ha flere verdier. Følgelig kan den sist bestemte verdien for hvert enkelt krysningspunkt samples (velges) i helhet, eller delvis, for å fremstille ett sett kontrollpunkt for å approksimere en redigerbar (NURBS) overflate ved en vilkårlig oppløsning.
I trinn 240 kan den redigerbare overflaten avbildes (gjengis) ved hjelp av minst én del av de valgte kontrollpunkter og gjengjvelsesteknikkene allment kjent for å danne en NURBS-overflate. Desto flere kontrollpunkter som anvendes for å avbilde den redigerbare overflaten, desto mer nøyaktig vil resultatet bli. Med andre ord er en mer nøyaktig beste-tilpasnings approksimasjon av den redigerbare overflaten mulig basert på antallet valgte kontrollpunkter som anvendes. Men antallet kontrollpunkter som anvendes for å avbilde den redigerbare overflaten kan uansett bestemmes som et skjønnspørsmål.
I fig. 8 er for eksempel innmatningsdatapunktene 802 og den redigerbare overflaten 804 avbildet samtidig for å illustrere den romlige forbindelsen mellom datapunktene 802, som kan brukes som innmatning i trinn 202 for å approksimere den redigerbare overflaten 804. Datapunktene 802 innbefatter seismiske data som representerer et forhåndsbestemt objekt (redigerbare overflatekurver), som kan fremstilles manuelt på en måte allment beskrevet i internasjonal publikasjon WO 02/37422 og/eller U.S. patent 6,765,570. Utmatningsoppløsningen kan forfines i henhold til forskjellige velkjente seismiske gjengjvelsesteknikker som nødvendig eller foretrukket.
I fig. 9 er bildet i fig. 8 redigert for å illustrere én del av datapunktene 802 og den tilhørende redigerbare overflaten 804, som kan brukes til å fortolke seismiske hendelser.
I fig. 10 er datapunktene 802 fjernet for å bare fremvise den redigerbare overflaten, som også kan brukes til å fortolke seismiske hendelser.
Den foreliggende oppfinnelse kan derfor anvendes for geofysisk analyse av seismiske data. Dessuten kan den foreliggende oppfinnelse integreres med én eller flere system-komponenter beskrevet med referanse til internasjonal publikasjon WO 02/37422 og/eller U.S. patent 6,765,570 for å danne en redigerbar overflate fra et flertall av seismiske datapunkt som for eksempel kan innbefatte x, y, z koordinater og en dataverdi som representerer et forhåndsbestemt objekt, slik som for eksempel en horisont eller forkastning. Det seismiske bildet automatisk gjengitt som et resultat ifølge den foreliggende oppfinnelsen representerer en redigerbar NURBS-overflate, som interaktivt kan redigeres og manipuleres, og som kan redusere signal/støy-forholdet representert ved innmatningsdatapunktene sammenlignet med konvensjonelle teknikker anvendt for å generere NURBS-overflater.
Den foreliggende oppfinnelsen kan imidlertid også anvendes på andre typer 3D-datasett, slik som for eksempel medisinske data og tekniske data. Det er derfor tiltenkt at forskjellige situasjoner, endringer og/eller modifikasjoner kan gjøres til utførelsesformene beskrevet heri, uten å forlate tanken og omfanget ifølge oppfinnelsen som beskrevet i de vedlage krav og tilsvarende dertil.

Claims (42)

1. Fremgangmåte for å approksimere en redigerbar overflate fra en projeksjon av et 3D-punktsett på et beste-tilpasningsplan for 3D-punktsettet, innbefattende: å projisere et rutenett på beste-tilpasningsplanet innenfor en forhåndsbestemt grense, der rutenettet innbefatter et flertall av krysningspunkt, å gi krysningspunktene en startverdi,karakterisert vedat den videre innbefatter: å velge minst én del av krysningspunktene som har en forhåndsbestemt verdi, der de valgte krysningspunktene definerer kontrollpunkter, og å avbilde den redigerbare overflaten ved hjelp av minst én del av kontroll punktene.
2. Fremgangsmåte som angitt i krav 1,karakterisert vedat 3D-punktsettet innbefatter en vilkårlige overflate.
3. Fremgangsmåte som angitt i krav 2,karakterisert vedat den innbefatter: å tilpasse en ellipsoide til 3D-punktsettet, og å bestemme en dominant akse for 3D-punktsettet basert på ellipsoiden.
4. Fremgangsmåte som angitt i krav 3,karakterisert vedat den dominante aksen brukes til å bestemme beste-tilpasningsplanet.
5. Fremgangsmåte som angitt i krav 1,karakterisert vedat beste-tilpasningsplanet bestemmes ved hjelp av en dominant akse for 3D-punktsettet.
6. Fremgangsmåte som angitt i krav 1,karakterisert vedat beste-tilnærmingsplanets forhåndsbestemte grense bestemmes av et flertall av ytterpunkter innbefattet i det projiserte 3D-punktsettet.
7. Fremgangsmåte som angitt i krav 1,karakterisert vedat det projiserte rutenettet er basert på forhåndsbestemte rutenettparametere.
8. Fremgangsmåte som angitt i krav 1,karakterisert vedat hvert krysningspunkt defineres av et skjæringspunkt i rutenettet.
9. Fremgangsmåte som angitt i krav 1,karakterisert vedat krysningspunktene gis startverdien null.
10. Fremgangsmåte som angitt i krav 1,karakterisert vedat den forhåndsbestemte krysningspunktverdien bestemmes av én eller flere punkter i det projiserte 3D-datasettet innenfor et forhåndsbestemt område ved kryningspunktet, og en avstand fra hvert punkt i det forhåndsbestemte området til krysningspunket.
11. Fremgangsmåte som angitt i krav 1,karakterisert vedat den redigerbare overflaten representerer en beste-tilpassing approksimering av 3D-punktsettet til den redigerbare overflaten.
12. Fremgangsmåte som angitt i krav 1,karakterisert vedat den redigerbare overflaten representerer en NURBS-overflate.
13. Fremgangsmåte som angitt i krav 10,karakterisertved at den innbefatter: å forfine den forhåndsbestemte verdien til minst én del av krysningspunktene med den forhåndsbestemte verdien, og å velge minst én del av krysningspunktene basert på én av den forhåndsbestemte verdien og den forfinede verdien.
14. Fremgangsmåte som angitt i krav 13,karakterisertv e d at den innbefatter, for de valgte krysningspunktene med den forhåndsbestemte verdien og den forfinede verdien, å erstatte den forhåndsbestemte verdien med den forfinede verdien.
15. Fremgangsmåte som angitt i krav 13,karakterisertved at den innbefatter: å danne et nytt rutenett ved å øke rutetettheten, og det nye rutenettet innbefatter et flertall av nye krysningspunkt, å bestemme en verdi for de nye krysningspunktene, å tilpasse et nytt plan til de nye krysningspunktene, å omberegne verdien for de nye krysningspunktene, og å glatte verdien for de nye krysningspunktene.
16. Fremgangsmåte som angitt i krav 15,karakterisertved at den innbefatter: å gi de nye krysningspunktene startverdien null, og å bestemme en ny verdi for de nye krysningspunktene.
17. Fremgangsmåte som angitt i krav 16,karakterisertv e d at den nye krysningspunktverdien bestemmes av ett eller flere punkter i det projiserte 3D-punktsettet innenfor et annet forhåndsbestemt område av det nye krysningspunktet, og en avstand fra hvert punkt i nevnte annet forhåndsbestemte område til det nye krysningspunktet, der nevnte annet forhåndsbestemte område er mindre enn det forhåndsbestemte området.
18. Fremgangsmåte som angitt i krav 16,karakterisertv e d at den innbefatter trinnet å gj enta trinnene i krav 15.
19. Fremgangsmåte som angitt i krav 15,karakterisertv e d at trinnet for omberegning av verdien for de nye krysningspunktene omfatter å erstatte hver nye krysningspunktverdi innen for det forutbestemte område med en omberegnet ny krysningspunktverdi.
20. Fremgangsmåte som angitt i krav 15,karakterisertv e d å omfatte trinnet å forfine de nye krysningspunktverdiene.
21. Fremgangsmåte som angitt i krav 15,karakterisertved dessuten å omfatte trinnet å gjenta ett eller flere av trinnene som angitt i krav 15.
22. Datamaskinlesbart medium som har eksekverbare instruksjoner for å approksimere en redigerbar overflate fra en projeksjon av et 3D-punktsett på et beste-tilpasningsplan for 3D-punktsettet, der instruksjonene er eksekverbare, innbefattende: å projisere et rutenett på beste-tilpasningsplanet innenfor en forhåndsbestemt grense, der rutenettet innbefatter et flertall av krysningspunkt, å gi krysningspunktene en startverdi,karakterisert vedat det videre innbefatter: å velge minst én del av krysningspunktene som har en forhåndsbestemt verdi, der de valgte krysningspunktene definerer kontrollpunkter, og å avbilde den redigerbare overflaten ved hjelp av minst én del av kontroll punktene.
23. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat 3D-punktsettet innbefatter en vilkårlige overflate.
24. Datamaskinlesbart medium som angitt i krav 23,karakterisert vedat det innbefatter: å tilpasse en ellipsoide til 3D-punktsettet, og å bestemme en dominant akse for 3D-punktsettet basert på ellipsoiden.
25. Datamaskinlesbart medium som angitt i krav 24,karakterisert vedat den dominante aksen brukes til å bestemme beste-tilpasningsplanet.
26. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat beste-tilpasningsplanet bestemmes ved hjelp av en dominant akse for 3D-punktsettet.
27. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat beste-tilnærmingsplanets forhåndsbestemte grense bestemmes av et flertall av ytterpunkter innbefattet i det projiserte 3D-punktsettet.
28. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat det projiserte rutenettet er basert på forhåndsbestemte rutenettparametere.
29. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat hvert krysningspunkt defineres av et skjæringspunkt i rutenettet.
30. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat krysningspunktene gis startverdien null.
31. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat den forhåndsbestemte krysningspunktverdien bestemmes av én eller flere punkter i det projiserte 3D-datasettet innenfor et forhåndsbestemt område ved kryningspunktet, og en avstand fra hvert punkt i det forhåndsbestemte området til krysningspunket.
32. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat den redigerbare overflaten representerer en beste-tilpassing approksimering av 3D-punktsettet til den redigerbare overflaten.
33. Datamaskinlesbart medium som angitt i krav 22,karakterisert vedat den redigerbare overflaten representerer en NURBS-overflate.
34. Datamaskinlesbart medium som angitt i krav 31,karakterisert vedat det innbefatter: å forfine den forhåndsbestemte verdien til minst én del av krysningspunktene med den forhåndsbestemte verdien, og å velge minst én del av krysningspunktene basert på én av den forhåndsbestemte verdien og den forfinede verdien.
35. Datamaskinlesbart medium som angitt i krav 34,karakterisert vedat det innbefatter, for de valgte krysningspunktene med den forhåndsbestemte verdien og den forfinede verdien, å erstatte den forhåndsbestemte verdien med den forfinede verdien.
36. Datamaskinlesbart medium som angitt i krav 34,karakterisert vedat å forfine den forhåndsbestemte verdien innbefatter: å danne et nytt rutenett ved å øke rutetettheten, og det nye rutenettet innbefatter et flertall av nye krysningspunkt, å bestemme en verdi for de nye krysningspunktene, å tilpasse et nytt plan til de nye krysningspunktene, å omberegne verdien for de nye krysningspunktene, og å glatte verdien for de nye krysningspunktene.
37. Datamaskinlesbart medium som angitt i krav 36,karakterisert vedat det innbefatter: å gi de nye krysningspunktene startverdien null, og å bestemme en ny verdi for de nye krysningspunktene.
38. Datamaskinlesbart medium som angitt i krav 37,karakterisert vedat den nye krysningspunktverdien bestemmes av ett eller flere punkter i det projiserte 3D-punktsettet innenfor et annet forhåndsbestemt område for det nye krysningspunktet og en avstand fra hvert punkt i nevnte annet forhåndsbestemte område til det nye krysningspunktet, der nevnte annet forhåndsbestemte område er mindre enn det forhåndsbestemte området.
39. Datamaskinlesbart medium som angitt i krav 37,karakterisert vedat det innbefatter trinnet å gjenta trinnene i krav 15.
40. Datamaskinlesbart medium som angitt i krav 36,karakterisert vedat trinnet med omberegning av verdien for de nye krysningspunktene omfatter å erstatte hver nye krysningspunktverdi innenfor det forutbestemte området med en omberegnet ny krysningspunktverdi.
41. Datamaskinlesbart medium som angitt i krav 36,karakterisert veddessuten å omfatte trinnet å forfine de nye krysningspunktverdiene.
42. Datamaskinlesbart medium som angitt i krav 41,karakterisert veddessuten å omfatte trinnet å gjenta ett eller flere av trinnene som angitt i krav 15.
NO20065397A 2004-04-29 2006-11-23 System og fremgangsmåte for approksimering av en redigerbar overflate NO339362B1 (no)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US56657404P 2004-04-29 2004-04-29
PCT/US2005/014937 WO2005108923A2 (en) 2004-04-29 2005-04-29 System and method for approximating an editable surface

Publications (2)

Publication Number Publication Date
NO20065397L NO20065397L (no) 2007-01-24
NO339362B1 true NO339362B1 (no) 2016-12-05

Family

ID=35320836

Family Applications (1)

Application Number Title Priority Date Filing Date
NO20065397A NO339362B1 (no) 2004-04-29 2006-11-23 System og fremgangsmåte for approksimering av en redigerbar overflate

Country Status (10)

Country Link
US (2) US7352369B2 (no)
EP (1) EP1756517B1 (no)
CN (1) CN100576250C (no)
AU (1) AU2005241463C1 (no)
BR (1) BRPI0509830A (no)
CA (1) CA2564156C (no)
EA (1) EA012579B1 (no)
MX (1) MXPA06012485A (no)
NO (1) NO339362B1 (no)
WO (1) WO2005108923A2 (no)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192307B (zh) * 2006-11-17 2012-05-23 鸿富锦精密工业(深圳)有限公司 点云三角网格面构建方法
US7904092B2 (en) * 2007-01-04 2011-03-08 Cisco Technology, Inc. Locally adjusted radio frequency coverage maps in wireless networks
US8284193B2 (en) * 2007-06-28 2012-10-09 Siemens Product Lifecycle Management Software Inc. System and method for composition of NURBS surfaces
US20090027380A1 (en) * 2007-07-23 2009-01-29 Vivek Rajan 3-D visualization
CN101377851A (zh) * 2007-08-29 2009-03-04 鸿富锦精密工业(深圳)有限公司 点云到点云的最近距离计算系统及方法
CN101441781B (zh) * 2007-11-23 2011-02-02 鸿富锦精密工业(深圳)有限公司 曲面翻面方法
US8253726B1 (en) 2008-01-09 2012-08-28 Spaceclaim Corporation, Inc. Systems and methods for modifying three dimensional geometry using an arbitrary cross-section plane
FR2929417B1 (fr) * 2008-03-27 2010-05-21 Univ Paris 13 Procede de determination d'une representation tridimensionnelle d'un objet a partir de points, programme d'ordinateur et systeme d'imagerie correspondant
US8525871B2 (en) * 2008-08-08 2013-09-03 Adobe Systems Incorporated Content-aware wide-angle images
US20100168557A1 (en) * 2008-12-30 2010-07-01 Deno D Curtis Multi-electrode ablation sensing catheter and system
US8900150B2 (en) 2008-12-30 2014-12-02 St. Jude Medical, Atrial Fibrillation Division, Inc. Intracardiac imaging system utilizing a multipurpose catheter
US8948476B2 (en) 2010-12-20 2015-02-03 St. Jude Medical, Atrial Fibrillation Division, Inc. Determination of cardiac geometry responsive to doppler based imaging of blood flow characteristics
US9610118B2 (en) * 2008-12-31 2017-04-04 St. Jude Medical, Atrial Fibrillation Division, Inc. Method and apparatus for the cancellation of motion artifacts in medical interventional navigation
US9186088B2 (en) * 2011-09-29 2015-11-17 Siemens Aktiengesellschaft Active catheter reconstruction for interventional magnetic resonance imaging
US20130106887A1 (en) * 2011-10-31 2013-05-02 Christopher Tremblay Texture generation using a transformation matrix
GB2505936A (en) * 2012-09-17 2014-03-19 Materialise Dental Nv 3D modelling of scanned body
BR112015028562A2 (pt) 2013-05-15 2017-07-25 Logined Bv método, sistema, e um ou mais meios de armazenamento legíveis por computador
US9412040B2 (en) * 2013-12-04 2016-08-09 Mitsubishi Electric Research Laboratories, Inc. Method for extracting planes from 3D point cloud sensor data
CN105574935A (zh) * 2014-10-10 2016-05-11 联想(北京)有限公司 一种信息处理方法和装置
US10319140B2 (en) * 2015-07-07 2019-06-11 Landmark Graphics Corporation Tri-cubic and hybrid interpolation in a 3D texture shader
FR3043227A1 (no) * 2015-11-04 2017-05-05 Services Petroliers Schlumberger
RU2617144C1 (ru) * 2015-12-09 2017-04-21 Акционерное общество "Муромский завод радиоизмерительных приборов" Способ имитации траекторий движения объектов
WO2018069744A1 (en) 2016-10-14 2018-04-19 Schlumberger Technology Corporation Geologic structural model generation
CN110163863B (zh) 2018-11-06 2022-11-04 腾讯科技(深圳)有限公司 三维物体分割方法、设备和介质

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5321612A (en) * 1991-02-26 1994-06-14 Swift Energy Company Method for exploring for hydrocarbons utilizing three dimensional modeling of thermal anomalies
US5233568A (en) * 1991-06-28 1993-08-03 Atlantic Richfield Company Geopressure analysis system
US5988862A (en) * 1996-04-24 1999-11-23 Cyra Technologies, Inc. Integrated system for quickly and accurately imaging and modeling three dimensional objects
US5903458A (en) * 1997-06-06 1999-05-11 Ford Global Technologies, Inc. System and method for forming geometric features using global reparametrization
US6300960B1 (en) * 1997-08-04 2001-10-09 Pixar Animation Studios Realistic surface simulation in computer animation
US6037949A (en) * 1997-08-04 2000-03-14 Pixar Animation Studios Texture mapping and other uses of scalar fields on subdivision surfaces in computer graphics and animation
US5951475A (en) * 1997-09-25 1999-09-14 International Business Machines Corporation Methods and apparatus for registering CT-scan data to multiple fluoroscopic images
US6765570B1 (en) * 1998-07-21 2004-07-20 Magic Earth, Inc. System and method for analyzing and imaging three-dimensional volume data sets using a three-dimensional sampling probe
JP4473358B2 (ja) * 1999-01-21 2010-06-02 株式会社東芝 診断装置
US7333648B2 (en) * 1999-11-19 2008-02-19 General Electric Company Feature quantification from multidimensional image data
WO2001074268A1 (en) * 2000-03-30 2001-10-11 Align Technology, Inc. System and method for separating three-dimensional models
US7006085B1 (en) * 2000-10-30 2006-02-28 Magic Earth, Inc. System and method for analyzing and imaging three-dimensional volume data sets
EP1330789B1 (en) * 2000-10-30 2006-05-03 Magic Earth, Inc. System and method for analyzing and imaging three-dimensional volume data sets
US20020164067A1 (en) * 2001-05-02 2002-11-07 Synapix Nearest neighbor edge selection from feature tracking
US7023432B2 (en) * 2001-09-24 2006-04-04 Geomagic, Inc. Methods, apparatus and computer program products that reconstruct surfaces from data point sets
US6931367B2 (en) * 2001-11-29 2005-08-16 Faurecia Exhaust Systems, Inc. Optimal rib design method for exhaust components
US7248259B2 (en) * 2001-12-12 2007-07-24 Technoguide As Three dimensional geological model construction
US7062419B2 (en) * 2001-12-21 2006-06-13 Intel Corporation Surface light field decomposition using non-negative factorization
WO2003088085A1 (en) * 2002-04-04 2003-10-23 Arizona Board Of Regents Three-dimensional digital library system
US6963671B2 (en) * 2002-04-17 2005-11-08 Mitsubishi Electric Research Labs, Inc. Method for determining distances to a surface from a range image
ATE347722T1 (de) * 2002-06-12 2006-12-15 Spatial Integrated Systems Inc Verfahren zur linearen raumabtastung und vorrichtung zur erzeugung eines numerischen 3d modells
US7399220B2 (en) * 2002-08-02 2008-07-15 Kriesel Marshall S Apparatus and methods for the volumetric and dimensional measurement of livestock
US7583275B2 (en) * 2002-10-15 2009-09-01 University Of Southern California Modeling and video projection for augmented virtual environments
US20040075656A1 (en) * 2002-10-18 2004-04-22 Kimia Benjamin B. Method and apparatus for multi-dimensional shape representation via shock flows
US7330791B2 (en) * 2002-10-18 2008-02-12 Exxonmobil Upstream Research Co. Method for rapid fault interpretation of fault surfaces generated to fit three-dimensional seismic discontinuity data
US7129942B2 (en) * 2002-12-10 2006-10-31 International Business Machines Corporation System and method for performing domain decomposition for multiresolution surface analysis
US20060288756A1 (en) * 2003-02-21 2006-12-28 De Meurechy Guido D K Method and apparatus for scanning corrosion and surface defects
US7889209B2 (en) * 2003-12-10 2011-02-15 Sensable Technologies, Inc. Apparatus and methods for wrapping texture onto the surface of a virtual object
US7436988B2 (en) * 2004-06-03 2008-10-14 Arizona Board Of Regents 3D face authentication and recognition based on bilateral symmetry analysis
US7586489B2 (en) * 2005-08-01 2009-09-08 Nvidia Corporation Method of generating surface defined by boundary of three-dimensional point cloud

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Schmälzle, Stephan Andreas. New methods for Nurbs surface approximation to scattered data. (2001). Hentet fra Internett: https://e-collection.library.ethz.ch/view/eth:23868 , Dated: 01.01.0001 *

Also Published As

Publication number Publication date
EA200601977A3 (ru) 2008-02-28
AU2005241463C1 (en) 2010-07-29
MXPA06012485A (es) 2007-06-19
NO20065397L (no) 2007-01-24
CA2564156C (en) 2014-04-08
AU2005241463B2 (en) 2010-01-28
US7576743B2 (en) 2009-08-18
EA200601977A2 (ru) 2007-04-27
CN101052997A (zh) 2007-10-10
EP1756517A2 (en) 2007-02-28
US7352369B2 (en) 2008-04-01
EA012579B1 (ru) 2009-10-30
CN100576250C (zh) 2009-12-30
BRPI0509830A (pt) 2007-10-16
EP1756517A4 (en) 2011-01-26
EP1756517B1 (en) 2020-05-13
AU2005241463A1 (en) 2005-11-17
US20050246130A1 (en) 2005-11-03
WO2005108923A2 (en) 2005-11-17
CA2564156A1 (en) 2005-11-17
US20080129731A1 (en) 2008-06-05
WO2005108923A3 (en) 2007-06-14

Similar Documents

Publication Publication Date Title
NO339362B1 (no) System og fremgangsmåte for approksimering av en redigerbar overflate
Haber et al. A general two‐dimensional, graphical finite element preprocessor utilizing discrete transfinite mappings
Botsch et al. Geometric modeling based on triangle meshes
EP2930691A1 (en) Fitting sample points with an isovalue surface
AU2006262013A1 (en) Large mesh deformation using the volumetric graph Laplacian
US20150294502A1 (en) Sample points of 3d curves sketched by a user
US7518606B2 (en) System and method for generating curved pipe objects for computer aided design models
Liu et al. Quality improvement of surface triangular mesh using a modified Laplacian smoothing approach avoiding intersection
Neto et al. Nagata patch interpolation using surface normal vectors evaluated from the IGES file
Stahl et al. Post-processing and visualization techniques for isogeometric analysis results
US20230120926A1 (en) U-splines: splines over unstructured meshes
US20160042106A1 (en) Generating a cad model from a finite element mesh
EP2471046A1 (en) Method for local refinement of a geometric or physical representation
Brock et al. Adjoint-based design optimization using CAD parameterization through CAPRI
Engleitner et al. Lofting with patchwork B-splines
KR102054773B1 (ko) 3차원 프린팅을 위한 3차원 객체 저작 장치 및 방법
Lévy et al. Circular incident edge lists: a data structure for rendering complex unstructured grids
Fayolle et al. Constructive heterogeneous object modeling using signed approximate real distance functions
Gain Enhancing spatial deformation for virtual sculpting
Rypl et al. Direct triangulation of 3D surfaces using the advancing front technique
Ivanov et al. Simulation and visualization of the dynamics of a surface with a movable boundary on a stationary unstructured mesh
Lauwers et al. Tetrahedral grids in Monte Carlo radiative transfer
Bekos et al. Slanted orthogonal drawings: Model, algorithms and evaluations
Peiro et al. High-order visualization with elvis
US10529444B1 (en) System that rapidly generates a solvent-excluded surface