CH717198B1 - Method for segmenting a discrete 3D grid. - Google Patents

Method for segmenting a discrete 3D grid. Download PDF

Info

Publication number
CH717198B1
CH717198B1 CH000269/2020A CH2692020A CH717198B1 CH 717198 B1 CH717198 B1 CH 717198B1 CH 000269/2020 A CH000269/2020 A CH 000269/2020A CH 2692020 A CH2692020 A CH 2692020A CH 717198 B1 CH717198 B1 CH 717198B1
Authority
CH
Switzerland
Prior art keywords
point
points
grid
discrete
steps
Prior art date
Application number
CH000269/2020A
Other languages
Italian (it)
Other versions
CH717198A1 (en
Inventor
Schärfig Randolf
Original Assignee
Lilla Nafradi
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 Lilla Nafradi filed Critical Lilla Nafradi
Priority to CH000269/2020A priority Critical patent/CH717198B1/en
Priority to PCT/IB2021/051897 priority patent/WO2021181238A1/en
Publication of CH717198A1 publication Critical patent/CH717198A1/en
Publication of CH717198B1 publication Critical patent/CH717198B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • G06V10/267Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/174Segmentation; Edge detection involving the use of two or more images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10072Tomographic images
    • G06T2207/10081Computed x-ray tomography [CT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10072Tomographic images
    • G06T2207/10088Magnetic resonance imaging [MRI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

L'invenzione riguarda un metodo per l'identificazione delle regioni di confine tra diversi oggetti e genera automaticamente i contorni delle superfici all'interno dei dati scansionati. Il metodo qui descritto comprende le fasi di calcolo di un vettore normale in ogni punto di dati, la preselezione di punti in prossimità delle superfici in caso di dati affetti da rumore, l'identificazione delle diverse superfici e la limitazione di queste superfici a trovarsi nel punto di maggior contrasto. L'applicazione principale è per l'imaging medico.The invention concerns a method for identifying border regions between different objects and automatically generates surface contours within the scanned data. The method described here includes the steps of calculating a normal vector at each data point, pre-selecting points near surfaces in case of data affected by noise, identifying different surfaces and limiting these surfaces to be in the point of greatest contrast. The main application is for medical imaging.

Description

CAMPO DELL'INVENZIONEFIELD OF INVENTION

[0001] La presente invenzione riguarda un metodo per la segmentazione di una griglia 3D discreta. [0001] The present invention concerns a method for segmenting a discrete 3D grid.

[0002] Con la dicitura griglia 3D discreta si intende una pila (o stack) ordinata di immagini, dove tutte le immagini hanno la stessa risoluzione e sono state catturate lungo l'asse perpendicolare al piano dell'immagine. [0002] The term discrete 3D grid refers to an ordered pile (or stack) of images, where all images have the same resolution and have been captured along the axis perpendicular to the image plane.

[0003] La griglia 3D discreta può essere ottenuta, ad esempio, da un dispositivo di scansione come, ma non solo, la risonanza magnetica (MRI) o la tomografia computerizzata (TAC) o altri scanner conosciuti. [0003] The discrete 3D grid can be obtained, for example, from a scanning device such as, but not limited to, magnetic resonance imaging (MRI) or computed tomography (CT) or other known scanners.

[0004] La griglia 3D discreta è memorizzata in una memoria del computer e il metodo qui descritto opera su tale griglia 3D. [0004] The discrete 3D grid is stored in computer memory and the method described here operates on that 3D grid.

[0005] Alcune delle applicazioni del metodo di cui sopra si trovano nel campo dell'imaging medico. [0005] Some of the applications of the above method are found in the field of medical imaging.

[0006] Tuttavia, il metodo descritto in questo documento non si limita alle immagini mediche, ma può essere utilizzato su tutti i dati forniti in un formato di griglia 3D discreta, ad es. microscopia 3D, scansioni geologiche e altri campi tecnici. [0006] However, the method described in this document is not limited to medical images, but can be used on any data provided in a discrete 3D grid format, e.g. 3D microscopy, geological scanning and other technical fields.

TECNICA NOTAKNOWN TECHNIQUE

[0007] Come è noto, l'obiettivo della segmentazione delle immagini mediche è quello di creare una segmentazione - ovvero di delineare tutti i confini tra i diversi tipi di tessuto - delle immagini mediche acquisite attraverso la risonanza magnetica (RMN), la tomografia computerizzata (TC) e altre forme di scansione 3D del corpo. I dispositivi di scansione utilizzano diversi mezzi per la scansione di un corpo umano e restituiscono uno stack di immagini in scala di grigi 2D. Questo stack permette ai professionisti del settore medico di osservare in modo non invasivo il paziente sottoposto a scansione per identificare i problemi e pianificare gli interventi chirurgici. [0007] As is known, the objective of the segmentation of medical images is to create a segmentation - that is to delineate all the boundaries between the different types of tissue - of the medical images acquired through magnetic resonance imaging (MRI), computed tomography (CT) and other forms of 3D body scanning. Scanning devices use different mediums to scan a human body and return a stack of 2D grayscale images. This stack allows medical professionals to non-invasively observe the scanned patient to identify problems and plan surgeries.

[0008] Un set di dati DICOM è costituito da immagini 2D, che forniscono un'immagine in scala di grigi attraverso il piano dello scanner, con ogni immagine catturata ad una certa distanza lungo l'asse perpendicolare a quel piano. [0008] A DICOM dataset consists of 2D images, providing a grayscale image across the scanner plane, with each image captured at a certain distance along the axis perpendicular to that plane.

[0009] Il valore di grigio (o di Hounsfield) di un punto dell'immagine è determinato dall'interazione del tessuto corporeo del paziente nella posizione relativa a quel punto immagine. Poiché le diverse densità o consistenze del materiale portano a diverse interazioni, l'immagine mostra diversi tessuti in diversi valori di grigio, consentendo a un professionista medico di „vedere“ l'interno del paziente sottoposto a scansione. [0009] The gray (or Hounsfield) value of an image point is determined by the interaction of the patient's body tissue at the position relative to that image point. Since different densities or consistencies of the material lead to different interactions, the image shows different tissues in different gray values, allowing a medical professional to “see” the inside of the patient being scanned.

[0010] La segmentazione dell'immagine medica viene utilizzata per classificare il contenuto dell'immagine. L'obiettivo è quello di identificare diversi tipi di tessuto e organi. La segmentazione può quindi essere utilizzata per diversi scopi, come la creazione di un modello 3D per la regione scansionata. [0010] Medical image segmentation is used to classify the image content. The goal is to identify different types of tissue and organs. Segmentation can then be used for different purposes, such as creating a 3D model for the scanned region.

[0011] Un problema significativo nella segmentazione automatica delle immagini mediche è che i valori di Hounsfield non sono identici all'interno dello stesso organo o tessuto. Ciò è dovuto al rumore statistico creato dal dispositivo di scansione ed alle differenze nel tessuto stesso, che non è omogeneo all'interno degli organi. Un'altra ragione per valori di Hounsfield non omogenei che si possono osservare soprattutto nelle ossa è che le ossa non hanno la stessa densità sulla loro superficie. Questo è soprattutto il caso in cui le ossa sono assottigliate (ad esempio in corrispondenza delle articolazioni) o in pazienti con una frattura. Soprattutto in caso di fratture, il paziente applica il meno stress possibile sull'osso ferito, che a sua volta perde densità. [0011] A significant problem in automatic segmentation of medical images is that Hounsfield values are not identical within the same organ or tissue. This is due to the statistical noise created by the scanning device and differences in the tissue itself, which is not homogeneous within organs. Another reason for non-homogeneous Hounsfield values that can be observed especially in bones is that bones do not have the same density on their surface. This is especially the case when the bones are thinned (for example at the joints) or in patients with a fracture. Especially in the case of fractures, the patient applies as little stress as possible to the injured bone, which in turn loses density.

[0012] Pertanto, il valore di Hounsfield da solo non può essere utilizzato per estrarre un modello 3D affidabile, anche se in pratica viene utilizzato per ottenere almeno una segmentazione grezza attraverso l'imposizione di soglie. [0012] Therefore, the Hounsfield value alone cannot be used to extract a reliable 3D model, although in practice it is used to achieve at least a rough segmentation through thresholding.

[0013] Uno scopo della presente invenzione è di creare un metodo in grado di identificare le regioni di confine tra diversi tipi di tessuto e di generare automaticamente i contorni delle superfici all'interno dei dati scansionati. [0013] An aim of the present invention is to create a method capable of identifying border regions between different tissue types and automatically generating surface contours within the scanned data.

[0014] Un ulteriore scopo dell'invenzione è quello di risolvere i problemi sopra citati in modo razionale ed economico. [0014] A further aim of the invention is to solve the above-mentioned problems in a rational and economical way.

SINTESI DELL'INVENZIONESUMMARY OF THE INVENTION

[0015] Gli scopi di cui sopra sono ottenuti grazie ad un metodo per la segmentazione di una griglia 3D discreta, la griglia 3D discreta viene creata a partire da uno stack ordinato di immagini acquisite da un dispositivo di scansione in un'unica serie, il metodo comprendendo almeno i seguenti passaggi: la superficie Snessere fatta crescere, aggiungendo alla superficie Sne alla coda Q, ogni punto Vjche giace in un intorno del punto Vcse la condizione Nc· Nj< T2è verificata, in cui Ncè il vettore normale del punto Vc, Njè il vettore normale del punto Vje T2è un valore di soglia predefinito, fino a quando tutti i punti vicini Vjal punto corrente Vcsono stati considerati e poi cancellare il punto corrente Vcdalla coda Q; – c.3) se c'è almeno un altro punto Vqnella coda Q, impostare c = q e ripetere i passi a partire dal punto c.2). – c.4) se la coda Q è vuota, scegliere il punto successivo della griglia 3D discreta e ripetere i passi da c) a c.3) fino a quando tutti i punti della griglia 3D discreta sono stati considerati e considerare la superficie Sicome completamente cresciuta; – d) per ciascuna delle superfici Sifatte crescere secondo i passi c), c.1), c.2) c.3) e c.4), cancellare tutti i punti SVinda meno che almeno uno dei punti vicini SVjabbia un valore di errore Ejche ha segno opposto rispetto al segno del valore di errore Einddel punto corrente SVind.[0015] The above purposes are achieved thanks to a method for segmenting a discrete 3D grid, the discrete 3D grid is created starting from an ordered stack of images acquired by a scanning device in a single series, the method comprising at least the following steps: the surface Sn be made to grow, by adding to the surface Sn and at the tail Q, each point Vj which lies in a neighborhood of the point Vc if the condition Nc· Nj< T2 is verified, in which Nc is the normal vector of the point Vc, Nj is the normal vector of the point Vj and T2 is a predefined threshold value, until all neighboring points Vj to the current point Vc have been considered and then delete the current point Vc from the Q queue; – c.3) if there is at least one other point Vq in the queue Q, set c = q and repeat the steps starting from point c.2). – c.4) if the Q queue is empty, choose the next point of the discrete 3D grid and repeat steps from c) to c.3) until all the points of the discrete 3D grid have been considered and consider the Sicome surface fully grown; – d) for each of the surfaces grown according to steps c), c.1), c.2) c.3) and c.4), delete all the points SVinda unless at least one of the neighboring points SVj has a value of error Ejwhich has the opposite sign compared to the sign of the error value Eind of the current point SVind.

[0016] Tra i vantaggi della presente invenzione, va notato che l'algoritmo descritto nella presente domanda di brevetto è in grado di identificare le regioni di confine tra i diversi tipi di tessuto e di generare automaticamente i contorni delle superfici all'interno dei dati scansionati. [0016] Among the advantages of the present invention, it should be noted that the algorithm described in the present patent application is capable of identifying the border regions between different tissue types and automatically generating surface contours within the data scanned.

[0017] La presente invenzione non richiede alcuna preelaborazione dei dati, né l'interazione manuale con l'utente. Poiché l'algoritmo funziona direttamente sui gradienti dei valori misurati di Hounsfield, funziona contemporaneamente sia con i dati della risonanza magnetica che con quelli della TAC. Il risultato dell'esecuzione dell'algoritmo sui dati acquisiti da un dispositivo di scansione medica è un insieme di oggetti 3D separati, ognuno dei quali rappresenta un oggetto all'interno della regione scansionata, ad esempio un oggetto per ogni osso disarticolato o anche un frammento di osso in caso di ossa rotte presenti nei dati, organi, muscoli e pelle. [0017] The present invention does not require any data preprocessing, nor manual interaction with the user. Since the algorithm works directly on the gradients of the measured Hounsfield values, it works with both MRI and CT data simultaneously. The result of running the algorithm on data acquired from a medical scanning device is a set of separate 3D objects, each representing an object within the scanned region, for example an object for each disarticulated bone or even a fragment of bone in case of broken bones present in the data, organs, muscles and skin.

[0018] Secondo un aspetto dell'invenzione, è possibile eseguire un ulteriore passo di preselezione dei punti che si trovano in prossimità delle superfici dell'immagine generata dal computer e scartare i punti appartenenti allo stesso tessuto, il passo di preselezione comprendente il calcolo di un numero Giper ogni punto Vi, detto numero Giessendo rappresentativo del numero di punti vicini Vjal punto Viaventi una superficie simile normale al punto Vi. [0018] According to an aspect of the invention, it is possible to perform a further preselection step of the points that are located close to the surfaces of the image generated by the computer and discard the points belonging to the same tissue, the preselection step comprising the calculation of a number Gifor each point Vi, called number Gibeing representative of the number of neighboring points Vjal point Viaventi a similar surface normal to the point Vi.

[0019] Questo aspetto dell'invenzione ha il vantaggio di permettere di trattare i casi in cui i dati sono molto affetti da rumore statistico, piuttosto che i casi in cui i dati sono affidabili. [0019] This aspect of the invention has the advantage of allowing us to deal with cases where the data is highly affected by statistical noise, rather than cases where the data is reliable.

[0020] Ulteriori caratteristiche dell'invenzione possono essere dedotte dalle rivendicazioni dipendenti. [0020] Further features of the invention can be deduced from the dependent claims.

BREVE DESCRIZIONE DELLE FIGUREBRIEF DESCRIPTION OF THE FIGURES

[0021] Ulteriori caratteristiche e vantaggi dell'invenzione saranno evidenti dalla lettura della seguente descrizione fornita a titolo esemplificativo e non limitativo, con l'ausilio delle figure illustrate nelle tavole allegate, nelle quali: [0021] Further characteristics and advantages of the invention will be evident from reading the following description provided by way of example and not by way of limitation, with the aid of the figures illustrated in the attached tables, in which:

[0022] - La Figura 1 illustra un primo passo di un calcolo di una normale in 2D e un intorno di 1; [0022] - Figure 1 illustrates a first step of a calculation of a 2D normal and a neighborhood of 1;

[0023] - La figura 2 illustra i vettori della figura 1 moltiplicati per la differenza del valore di Hounsfield del punto corrispondente al rispettivo vettore; [0023] - Figure 2 illustrates the vectors of figure 1 multiplied by the difference of the Hounsfield value of the point corresponding to the respective vector;

[0024] - La Figura 3 mostra il risultato della somma dei vettori della Figura 2; [0024] - Figure 3 shows the result of the sum of the vectors of Figure 2;

[0025] - La figura 4 mostra il vettore normale normalizzato (di lunghezza unitaria) risultante per il pixel centrale; [0025] - Figure 4 shows the resulting normalized normal vector (of unit length) for the central pixel;

[0026] - La Figura 5 mostra i vettori risultanti quando si applica il calcolo sopra descritto ad ogni punto della griglia data. Si noti che i vettori sono abbastanza uguali sul confine tra la regione scura e quella chiara, mentre sono inesistenti all'interno di entrambe le regioni; [0026] - Figure 5 shows the resulting vectors when applying the calculation described above to each given grid point. Note that the vectors are quite equal on the boundary between the dark and light regions, while they are non-existent within both regions;

[0027] - La Figura 6a mostra un singolo strato di un file Digital Imaging and CQmmunications in Medicine (DICOM). Le Figure 6b-6c mostrano i diversi valori calcolati per questa porzione e la Figura 6d mostra la segmentazione finale risultante; [0027] - Figure 6a shows a single layer of a Digital Imaging and CQmmunications in Medicine (DICOM) file. Figures 6b-6c show the different values calculated for this portion and Figure 6d shows the resulting final segmentation;

[0028] - La Figura 7a mostra un'immagine del modello 3D generato dalla segmentazione del file DICOM di due piedi di un paziente, e le Figure 7b-7d un modello 3D dell'osso dell'anca segmentato da un altro file DICOM; e [0028] - Figure 7a shows an image of the 3D model generated by DICOM file segmentation of two feet of a patient, and Figures 7b-7d a 3D model of the hip bone segmented from another DICOM file; And

[0029] - La Figura 8 mostra i muscoli glutei in rosso sulla parte superiore e la pelle dei glutei di un paziente nella parte inferiore dell'immagine. [0029] - Figure 8 shows the gluteal muscles in red at the top and the skin of a patient's buttocks at the bottom of the image.

[0030] - La Figura 6d, le Figure 7a-7d e la Figura 8 mostrano anche che l'algoritmo genera modelli 3D separati per i diversi oggetti visualizzati dai diversi colori. [0030] - Figure 6d, Figures 7a-7d and Figure 8 also show that the algorithm generates separate 3D models for the different objects displayed by the different colors.

DESCRIZIONE DETTAGLIATA DELLE FIGUREDETAILED DESCRIPTION OF THE FIGURES

[0031] Questa invenzione sarà ora descritta con particolare riferimento alle figure allegate. [0031] This invention will now be described with particular reference to the attached figures.

[0032] L'algoritmo proposto nella presente domanda di brevetto comprende una serie di passi consecutivi, a seconda della qualità dei dati: 1. Calcolare il vettore normale in ogni punto dei dati 2. Pre-selezionare i punti in prossimità delle superfici (solo per i dati affetti da rumore statistico) 3. Far crescere diverse regioni di superficie 4. Limitare queste superfici a trovarsi nel punto di maggior contrasto.[0032] The algorithm proposed in the present patent application includes a series of consecutive steps, depending on the quality of the data: 1. Calculate the normal vector at each point of the data 2. Pre-select the points close to the surfaces (only for data affected by statistical noise) 3. Grow different surface regions 4. Restrict these surfaces to be at the point of greatest contrast.

[0033] Per descrivere la tecnica in dettaglio, verranno descritti preliminarmente i dati richiesti come input a questa tecnica ed i parametri direttamente calcolati da essa. Con questo, verrà descritto come è possibile costruire o far crescere le superfici e restringerle o limitarle fino al punto di interesse, cioè i punti con il contrasto più forte. [0033] To describe the technique in detail, the data required as input to this technique and the parameters directly calculated by it will be preliminarily described. With this, it will be described how you can build or grow surfaces and shrink or limit them to the point of interest, i.e. the points with the strongest contrast.

[0034] Questo documento farà riferimento all'uso dei file DICOM, in quanto sono lo standard de facto nella memorizzazione dei dati delle immagini mediche, acquisite da scanner come la risonanza magnetica, la TAC e dispositivi di scansione simili. [0034] This document will refer to the use of DICOM files, as they are the de facto standard in storing medical image data, acquired by scanners such as MRI, CT and similar scanning devices.

[0035] Va notato, tuttavia, che la tecnica e il metodo qui descritto funzionerà allo stesso modo su tutti i dati che vengono forniti in modo simile. [0035] It should be noted, however, that the technique and method described here will work the same on all data that is provided in a similar manner.

[0036] In questo documento il termine punto descrive un singolo elemento pixel di una singola immagine DICOM. [0036] In this document the term dot describes a single pixel element of a single DICOM image.

[0037] Il termine griglia verrà utilizzato per descrivere la struttura dei dati 3D che viene creata da tutti i punti di una singola serie all'interno di un file DICOM. La griglia di un file DICOM avrà quindi le dimensioni: • Larghezza w = larghezza di una singola immagine DICOM • Altezza h = altezza di una singola immagine DICOM • Profondità d = numero di immagini nel DICOM (considerando solo una singola serie)[0037] The term grid will be used to describe the 3D data structure that is created from all the points of a single series within a DICOM file. The grid of a DICOM file will therefore have the dimensions: • Width w = width of a single DICOM image • Height h = height of a single DICOM image • Depth d = number of images in the DICOM (considering only a single series)

[0038] La notazione Viviene utilizzata per riferirsi ad un punto arbitrario all'interno della griglia. Ogni punto Viavrà inizialmente un valore di Hounsfield Hideterminato dall'output dello scanner. Questo è l'ingresso su cui opera l'algoritmo della presente invenzione. [0038] The Vi notation is used to refer to an arbitrary point within the grid. Each Vi point will initially have a Hounsfield value determined by the scanner output. This is the input on which the algorithm of the present invention operates.

[0039] La notazione V[x,y,z]è usato per riferirsi al punto con le coordinate x ∈ [0, w - 1], y ∈ [0, h - 1], z ∈ [0, d - 1] all'interno della griglia. [0039] The notation V[x,y,z]is used to refer to the point with the coordinates x ∈ [0, w - 1], y ∈ [0, h - 1], z ∈ [0, d - 1 ] inside the grid.

[0040] Il vettore è il vettore normalizzato dal centro di Vial centro di Vjed è calcolato utilizzando le coordinate della griglia di Vie di Vj. [0040] The vector is the vector normalized by the center of Vial center of Vj and is calculated using the grid coordinates of Vie of Vj.

[0041] Si ponga come intorno n di Vi. [0041] Let it be considered as around n of Vi.

[0042] è quindi definito come l'insieme di tutti i punti con una distanza da Viinferiore o uguale a n: [0042] is therefore defined as the set of all points with a distance from Viless than or equal to n:

[0043] Utilizzando queste definizioni, un valore di errore Eie un vettore normale possono essere calcolati per ogni punto della griglia Vicome segue: [0043] Using these definitions, an error value E and a normal vector can be calculated for each Vi grid point as follows:

[0044] In primo luogo, i due vettori sono calcolati. [0044] First, the two vectors are calculated.

[0045] Avendo ottenuto i valori di e è possibile calcolare il vettore normale e il valore dell' errore [0045] Having obtained the values of and it is possible to calculate the normal vector and the error value

[0046] Si noti che i vettori puntano quasi sempre nella stessa direzione, il che si traduce in un prodotto scalare Eiquasi sempre positivo e in realtà anche vicino a 1. Un'eccezione si verifica quando Viè al confine tra le regioni con diversi valori di Hounsfield. In questo caso, i due vettori punteranno in direzioni opposte, portando ad un valore per Eivicino a -1. Questo è un fatto importante, che sarà ampiamente utilizzato in una fase successiva del metodo descritto. La figura 6c mostra il valore di errore calcolato in ogni punto; nero significa che il valore è esattamente zero, verde che è molto vicino a zero, mentre il colore rosso indica un valore di errore vicino a -1.0 e il colore blu un valore di errore vicino a 1.0. [0046] Note that the vectors almost always point in the same direction, which results in a dot product Eialmost always positive and actually even close to 1. An exception occurs when there is a border between regions with different values of Hounsfield. In this case, the two vectors will point in opposite directions, leading to a value for E near -1. This is an important fact, which will be widely used in a later stage of the described method. Figure 6c shows the calculated error value at each point; black means that the value is exactly zero, green which is very close to zero, while the red color indicates an error value close to -1.0 and the blue color indicates an error value close to 1.0.

[0047] In modo più generale è calcolato come la somma di tutti i vettori dove l'indice j passa sopra tutti i punti Vjnell' intorno del punto Vimoltiplicato per la differenza del valore di Hounsfield tra i e j. In seguito è calcolato sommando i vettori questa volta moltiplicati per il valore assoluto della differenza del valore di Hounsfield tra i e j. [0047] In a more general way it is calculated as the sum of all the vectors where the index j passes over all the points Vj in the neighborhood of the point Vi multiplied by the difference of the Hounsfield value between i and j. It is then calculated by summing the vectors this time multiplied by the absolute value of the difference in the Hounsfield value between i and j.

[0048] In caso di dati affetti da rumore, è possibile utilizzare la seguente fase di preselezione dei punti in prossimità delle superfici. [0048] In case of data affected by noise, it is possible to use the following pre-selection phase of the points near the surfaces.

[0049] Quando i vettori normali sono stati calcolati per tutti i punti della griglia, i punti che non sono in prossimità di alcuna superficie possono essere esclusi. [0049] When normal vectors have been calculated for all grid points, points that are not in proximity to any surfaces can be excluded.

[0050] Per calcolare ciò vengono utilizzati i seguenti fatti: a) se un punto si trova abbastanza vicino ad una superficie reale, la normale calcolata è molto simile al vettore normale della superficie reale, b) per le superfici organiche chiuse, l'angolo tra la normale di due punti vicini della superficie è in generale piuttosto piccolo a causa dell'assenza di spigoli vivi.[0050] To calculate this the following facts are used: a) if a point is located close enough to a real surface, the calculated normal is very similar to the normal vector of the real surface, b) for closed organic surfaces, the angle between the normal of two neighboring points on the surface is in general rather small due to the absence of sharp edges.

[0051] Per eliminare la perturbazione del rumore nei dati, si controlla inizialmente quale dei punti della griglia si trova vicino ad una superficie. Poiché gli incroci tra superfici introducono salti più grandi nei valori di Hounsfield vicini, i vettori normali in quelle posizioni tendono ad essere più omogenei, puntando a questa regione della maggiore differenza nei valori di Hounsfield. Al contrario, le regioni che hanno solo lievi variazioni di valore dovute al rumore creano vettori normali che puntano in direzioni casuali (a causa della casualità del rumore iniziale). [0051] To eliminate the noise disturbance in the data, we initially check which of the grid points is located close to a surface. Because intersections between surfaces introduce larger jumps in nearby Hounsfield values, the normal vectors at those locations tend to be more homogeneous, pointing to this region of greatest difference in Hounsfield values. In contrast, regions that have only slight changes in value due to noise create normal vectors that point in random directions (due to the randomness of the initial noise).

[0052] Questo fatto viene utilizzato per individuare le regioni di interesse calcolando un altro numero Giper ogni punto Vi. Questo conterà i „buoni“ vicini di Vi, il che significa punti aventi una normale alla superficie simile. Si determina questo numero facendo un looping su tutti i punti Vjin e calcolando il prodotto scalare d(i,j)= Ni· Nj. Giche sarà quindi pari al numero di tutti d(i,j)che sono più grandi di una certa soglia definita dall'utente Ti. [0052] This fact is used to locate regions of interest by calculating another Gi number for each point Vi. This will count the “good” neighbors of Vi, which means points having a similar surface normal. This number is determined by looping over all the Vjin points and calculating the scalar product d(i,j)= Ni· Nj. Giche will then be equal to the number of all d(i,j)that are larger than a certain user-defined threshold Ti.

[0053] Per determinare a quale valore di Giscartare un punto della griglia Vi, sono stati presi in considerazione i seguenti elementi. [0053] To determine at what value of Gi to discard a point of the Vi grid, the following elements were taken into consideration.

[0054] Anche se è solo un'approssimazione, è noto che nelle zone vicine ad un confine si troveranno vettori normali piuttosto omogenei. Per un punto sul confine, ci si può aspettare che circa la metà di tutti i punti vicini contribuisca a Gipoiché si presume che qualsiasi superficie in un'area molto localizzata della scansione si comporti come un piano, tagliando l'intorno in due parti - una all'interno e una all'esterno della superficie. È anche noto che il numero di vicini in è 26 per n = 1 e 124 per n = 2. Pertanto, scartando i punti con un valore relativo di G inferiore alla metà del numero massimo possibile di punti nel quartiere, si ottengono risultati adeguati per rimuovere le regioni all'interno dello stesso tessuto. [0054] Even if it is only an approximation, it is known that rather homogeneous normal vectors will be found in areas close to a boundary. For a point on the boundary, about half of all neighboring points can be expected to contribute to Gisince any surface in a very localized area of the scan is assumed to behave like a plane, cutting the neighborhood into two parts - one inside and one outside the surface. It is also known that the number of neighbors in is 26 for n = 1 and 124 for n = 2. Therefore, discarding points with a relative value of G less than half of the maximum possible number of points in the neighborhood gives adequate results for remove regions within the same tissue.

[0055] Si noti che la fase di preselezione dei punti in prossimità delle superfici deve essere utilizzata solo quando i dati sono molto rumorosi. Questo passo non ha effetti positivi nei dati affidabili, poiché per questo tipo di dati è sufficiente il passo 3. [0055] Note that the pre-selection step of points near surfaces should only be used when the data is very noisy. This step has no positive effect in reliable data, since step 3 is sufficient for this type of data.

[0056] Si illustra ora la creazione delle superfici contenute nella griglia. Per fare questo, si procede a fare un loop su tutti i punti Vinella griglia che non sono stati scartati al punto 2 (in caso di dati rumorosi). [0056] The creation of the surfaces contained in the grid is now illustrated. To do this, we proceed to loop over all the Vinella grid points that were not discarded in step 2 (in case of noisy data).

[0057] Per ogni punto vengono eseguiti i seguenti passi: [0057] For each point the following steps are performed:

[0058] Dopo questo, ogni punto appartiene esattamente ad una superficie S. Si noti che un punto non può appartenere a più di una superficie. Se un punto può essere raggiunto da due o più superfici diverse a causa del fatto che il prodotto del punto con i suoi vicini è più grande della soglia definita dall'utente T2sarebbe stato aggiunto alla prima superficie che avesse raggiunto quel punto e sarebbe stato quindi aggiunto alla coda utilizzata per far crescere questa superficie. Nell' elaborare la coda fino a quando non è vuota, esso sarebbe diventato un punto attivo che a sua volta avrebbe aggiunto tutti i suoi vicini, che non si trovano in una superficie in quel momento, alla superficie attuale. Questo a sua volta avrebbe permesso alla seconda superficie di essere completamente integrata nella prima superficie che ha raggiunto questo punto. È quindi impossibile che un punto appartenga a più superfici. Ciò si traduce anche nel fatto che tutte le superfici create sono una partizione di tutti i punti della griglia in set separati. [0058] After this, each point belongs to exactly one surface S. Note that a point cannot belong to more than one surface. If a point can be reached from two or more different surfaces due to the fact that the product of the point with its neighbors is larger than the user-defined threshold T2 would have been added to the first surface that reached that point and would therefore have been added to the tail used to grow this surface. In processing the queue until it is empty, it would become an active point which in turn would add all its neighbors, which are not in a surface at that time, to the current surface. This in turn would have allowed the second surface to be fully integrated into the first surface that reached this point. It is therefore impossible for a point to belong to multiple surfaces. This also results in all created surfaces being a partition of all grid points into separate sets.

[0059] Un'ultima fase del metodo prevede di limitare le superfici identificate a giacere nel punto di maggior contrasto. [0059] A final phase of the method involves limiting the identified surfaces to lie at the point of greatest contrast.

[0060] I punti in un'unica superficie Sisono punti che condividono un angolo più piccolo di T2con i loro diretti vicini. Ma a causa del fatto che il calcolo delle normali nella prima fase del presente metodo è stato effettuato su un'area più ampia, la superficie è sfocata (vedi Figura 5 e Figura 6b). Invece di contenere solo i punti in cui il gradiente tra i diversi tipi di tessuto è più forte, contiene anche i punti che sono abbastanza vicini a questa regione. [0060] Points in a single surface Si are points that share an angle smaller than T2 with their direct neighbors. But due to the fact that the calculation of normals in the first stage of the present method was carried out over a larger area, the surface is blurry (see Figure 5 and Figure 6b). Instead of containing only the points where the gradient between different tissue types is strongest, it also contains points that are quite close to this region.

[0061] Per limitare questi confini ai punti di maggior contrasto, si utilizza il valore di errore precedentemente calcolato Ej(si veda Figura 6c) . Per ottenere superfici Siche contengono solo i punti che si trovano esattamente al confine tra i diversi tessuti si procede come segue: si considerano tutte le superfici create, e per ogni superficie Scsi procede così: [0061] To limit these boundaries to the points of greatest contrast, the previously calculated error value Ej is used (see Figure 6c). To obtain Siche surfaces containing only the points that are located exactly on the border between the different fabrics, proceed as follows: consider all the surfaces created, and for each SCsi surface proceed as follows:

[0062] In questa fase, il risultato è uno stack di immagini con una segmentazione molto accurata di tutti gli oggetti di questo stack. Se è necessario un modello 3D dell'area scansionata, è ormai banale costruirlo con mezzi diversi. Quello che abbiamo usato, è quello di eseguire semplicemente un algoritmo del tipo cubi marcianti su tutta la griglia, una superficie alla volta. Affinché l'algoritmo produca un buon modello 3D, i punti della griglia sono impostati a zero, mentre solo i punti contenuti nella superficie corrente devono essere al di sopra della soglia impostata per l'algoritmo dei cubi marcianti. In questo modo, viene creato un preciso modello 3D per ogni superficie all'interno dell'area scansionata. [0062] At this stage, the result is an image stack with very accurate segmentation of all objects in this stack. If a 3D model of the scanned area is needed, it is now trivial to build it by different means. What we used was to simply run a marching cubes type algorithm across the entire grid, one surface at a time. For the algorithm to produce a good 3D model, the grid points are set to zero, while only the points contained in the current surface must be above the threshold set for the marching cubes algorithm. This way, a precise 3D model is created for each surface within the scanned area.

[0063] Si noti che la tecnica descritta in questo documento non si limita alle immagini mediche, ma può essere utilizzata su tutti i dati forniti in una griglia 3D discreta, ad esempio microscopia 3D, scansioni geologiche e così via. Inoltre, il calcolo dei vettori normali viene effettuato in 3D, il che dà risultati migliori rispetto all'esecuzione di questo calcolo in ciascuna delle immagini 2D dello stack separatamente. Tuttavia, anche questo potrebbe essere fatto e porterebbe a risultati migliori rispetto allo stato attuale della tecnica. [0063] Note that the technique described in this document is not limited to medical images, but can be used on any data provided in a discrete 3D grid, for example 3D microscopy, geological scans, and so on. Furthermore, the calculation of the normal vectors is done in 3D, which gives better results than performing this calculation in each of the 2D images of the stack separately. However, this too could be done and would lead to better results than the current state of the art.

[0064] In particolare, la figura 1 illustra un primo passo di un normale calcolo in 2D e un intorno n di 1, la figura 1 e le figure seguenti sono solo un esempio delle varie possibilità del metodo. [0064] In particular, figure 1 illustrates a first step of a normal 2D calculation and a neighborhood n of 1, figure 1 and the following figures are just an example of the various possibilities of the method.

[0065] Il calcolo normale in 2D e un intorno di n inizia con un vettore normalizzato dal punto corrente nel centro, verso il centro di ciascuno dei suoi 8 vicini. [0065] Normal computation in 2D and a neighborhood of n starts with a normalized vector from the current point in the center, towards the center of each of its 8 neighbors.

[0066] La figura 2 illustra i vettori della figura 1 moltiplicati per la differenza del valore di Hounsfield del punto corrispondente al rispettivo vettore. [0066] Figure 2 illustrates the vectors of figure 1 multiplied by the difference of the Hounsfield value of the point corresponding to the respective vector.

[0067] Entrambi i vettori lungo la diagonale dall'alto a sinistra al basso a destra scompaiono, poiché i valori di Hounsfield sono uguali lungo quella diagonale in questo esempio. Inoltre, tre vettori hanno cambiato direzione, a causa del segno negativo nella differenza di Hounsfield. [0067] Both vectors along the diagonal from top left to bottom right disappear, since the Hounsfield values are equal along that diagonal in this example. Furthermore, three vectors changed direction, due to the negative sign in the Hounsfield difference.

[0068] La Figura 3 mostra il risultato della somma dei vettori della Figura 2. [0068] Figure 3 shows the result of the sum of the vectors of Figure 2.

[0069] La Figura 4 mostra il vettore normale risultante per il pixel centrale. [0069] Figure 4 shows the resulting normal vector for the central pixel.

[0070] La Figura 5 mostra i vettori risultanti quando si applica il calcolo sopra descritto ad ogni punto della griglia data. [0070] Figure 5 shows the resulting vectors when applying the calculation described above to each given grid point.

[0071] Per immagini lisce, i punti che non confinano con un gradiente calcolano un vettore con lunghezza zero e possono quindi essere scartati nel processo di ricerca di una superficie. Per la maggior parte delle immagini mediche, nessun punto adiacente avrà lo stesso valore, in modo che i vettori risultanti in aree dello stesso tipo di tessuto puntino in direzioni casuali determinate solo dal rumore statistico nei dati. Ma poiché il cambiamento creato dal rumore è molto piccolo rispetto al cambiamento creato dalla differenza tra i diversi tipi di tessuto, le normali lungo la superficie sono abbastanza stabili per ulteriori calcoli. [0071] For smooth images, points that do not border a gradient compute a vector with zero length and can therefore be discarded in the process of finding a surface. For most medical images, no adjacent points will have the same value, so vectors resulting in areas of the same tissue type will point in random directions determined only by statistical noise in the data. But because the change created by the noise is very small compared to the change created by the difference between different tissue types, the normals along the surface are stable enough for further calculations.

[0072] Le figure 6a-6d mostrano varie immagini relative ad una porzione di Digital Imaging e CQmmunications in Medicine (DICOM). [0072] Figures 6a-6d show various images relating to a portion of Digital Imaging and CQmmunications in Medicine (DICOM).

[0073] L'immagine della Figura 6a mostra i valori di Hounsfield in una porzione di DICOM. L'immagine della Figura 6b mostra i normali vettori calcolati da quel set di dati. Ai fini della visualizzazione il vettore 3D è codificato nello spazio RGB dell'immagine a colori. Questo è stato fatto prendendo ogni componente del vettore, aggiungendo 1.0 e moltiplicandolo per 127. Poiché ogni componente del vettore normalizzato è nell'intervallo [-1.0, 1.0], ogni componente di colore dell'immagine risultante sarà quindi nell'intervallo [0, 254]. L'immagine visualizza la regolarità dei vettori lungo i bordi utilizzati nella crescita delle superfici. L'immagine della Figura 6c mostra il valore di errore. I pixel rossi hanno un valore di errore compreso tra -1.0 e -0.5 mentre i pixel blu hanno un valore di errore compreso tra 0.5 e 1.0. I pixel verdi mostrano valori di errore tra - 0,5 e 0,5. [0073] The image in Figure 6a shows the Hounsfield values in a portion of DICOM. The image in Figure 6b shows the normal vectors computed from that dataset. For display purposes the 3D vector is encoded in the RGB space of the color image. This was done by taking each component of the vector, adding 1.0, and multiplying it by 127. Since each component of the normalized vector is in the range [-1.0, 1.0], each color component of the resulting image will therefore be in the range [0, 254]. The image displays the smoothness of the vectors along the edges used in growing the surfaces. The image in Figure 6c shows the error value. Red pixels have an error value between -1.0 and -0.5 while blue pixels have an error value between 0.5 and 1.0. Green pixels show error values between - 0.5 and 0.5.

[0074] L'immagine della Figura 6d mostra la segmentazione risultante utilizzando sia i normali vettori per la crescita superficiale sia i valori di errore per l'identificazione dei confini. [0074] The image in Figure 6d shows the resulting segmentation using both normal vectors for surface growth and error values for boundary identification.

[0075] La Figura 7a mostra sul lato sinistro dell'immagine la segmentazione di due piedi di un paziente segmentato da un'immagine DICOM, e le Figure 7b-7c mostrano l'osso dell'anca segmentato da un'altra immagine DICOM. [0075] Figure 7a shows on the left side of the image the segmentation of two feet of a patient segmented from a DICOM image, and Figures 7b-7c show the hip bone segmented from another DICOM image.

[0076] Entrambi gli esempi mostrano che l'algoritmo è in grado non solo di segmentare le superfici in un dato DICOM, ma anche di creare oggetti separati anche quando gli oggetti sono vicini tra loro. [0076] Both examples show that the algorithm is capable of not only segmenting surfaces in a given DICOM, but also creating separate objects even when the objects are close to each other.

[0077] La Figura 8 mostra i muscoli glutei in rosso sulla parte superiore e la pelle dei glutei di un paziente nella parte inferiore dell' immagine [0077] Figure 8 shows the gluteal muscles in red at the top and the skin of a patient's buttocks at the bottom of the image

[0078] Questa immagine della Figura 8 è stata estratta dallo stesso DICOM che ha prodotto l'osso dell'anca nelle Figure 7a-c. L'algoritmo qui descritto è in grado di segmentare automaticamente tutte le parti in una sola volta, separando le diverse superfici in diversi modelli 3D. [0078] This Figure 8 image was extracted from the same DICOM that produced the hip bone in Figures 7a-c. The algorithm described here is able to automatically segment all parts at once, separating the different surfaces into different 3D models.

[0079] La Figura 8 dimostra anche l'estrema precisione dell'algoritmo, mostrando ogni ammaccatura della pelle del paziente (parte inferiore) e le fibre muscolari chiaramente distinte. [0079] Figure 8 also demonstrates the extreme accuracy of the algorithm, showing each dent in the patient's skin (underside) and clearly distinct muscle fibers.

[0080] Un modo preferito per eseguire il calcolo del metodo descritto è quello di calcolare i vettori normali nella griglia 3D, che dà risultati migliori rispetto all'esecuzione di questo calcolo in ciascuna delle immagini 2D dello stack separatamente. [0080] A preferred way to perform the calculation of the described method is to calculate the normal vectors in the 3D grid, which gives better results than performing this calculation in each of the 2D images of the stack separately.

[0081] Tuttavia, invece di calcolare i normali vettori in 3D, si potrebbe fare separatamente in ogni immagine dello stack, ottenendo così i normali vettori 2D. Questo porterebbe a risultati iniziali molto peggiori, ma ciò potrebbe essere compensato in una fase successiva della costruzione della superficie. [0081] However, instead of calculating the normal vectors in 3D, this could be done separately in each image of the stack, thus obtaining the normal 2D vectors. This would lead to much worse initial results, but this could be compensated for at a later stage of surface construction.

[0082] La stessa cosa vale per la costruzione delle superfici. Anche se potrebbero essere costruite prima all'interno di ogni strato, e poi essere combinate passando sopra tutti gli strati. [0082] The same thing applies to the construction of surfaces. Although they could be built within each layer first, and then combined by passing over all layers.

[0083] È anche da intendersi che quando si considera la vicinanza di un punto - sia che per il calcolo dei vettori normali o per il controllo dei buoni vicini - non si preferisce esplicitamente il valore della distanza, ma l'estensione della vicinanza può essere scelta a piacere a seconda delle applicazioni. [0083] It is also to be understood that when considering the proximity of a point - whether for the calculation of normal vectors or for checking good neighbors - the value of the distance is not explicitly preferred, but the extent of the proximity can be freely chosen depending on the applications.

[0084] Ovviamente, l'invenzione così come descritta può essere modificata o migliorata per ragioni contingenti o particolari, senza uscire dallo scopo dell'invenzione. [0084] Obviously, the invention as described can be modified or improved for contingent or particular reasons, without departing from the scope of the invention.

Claims (8)

1. Metodo per la segmentazione di una griglia 3D discreta nel campo dell'imaging medico, la griglia 3D discreta essendo costruita a partire dai dati acquisiti da un dispositivo di scansione e memorizzati in una memoria di un computer per rappresentare uno stack di immagini DICOM visualizzabili su uno schermo del suddetto computer, il metodo essendo implementato mediante un sistema computerizzato e comprendendo almeno i seguenti passi: – a) calcolare un vettore normale N1per ogni punto V1della griglia 3D discreta, il vettore normale N1essendo calcolato in funzione del valore di Hounsfield H1del rispettivo punto V1e dei valori di Hounsfield Hjdei punti Vjche giacciono in un intorno del punto V1, i valori di Hounsfield H1, Hjessendo determinati a partire dall'output del dispositivo di scansione, ove il vettore normale N1è calcolato utilizzando la formula ove e il vettore è il vettore normalizzato dal punto V1al punto Vjed è calcolato utilizzando le coordinate della griglia di V1e di Vj; – b) calcolare un valore di errore E1per ogni vettore normale N1, ove il valore di errore E1è calcolato utilizzando la formula 1. Method for segmenting a discrete 3D grid in the field of medical imaging, the discrete 3D grid being constructed from data acquired by a scanning device and stored in a computer memory to represent a stack of viewable DICOM images on a screen of the aforementioned computer, the method being implemented by means of a computerized system and comprising at least the following steps: – a) calculate a normal vector N1 for each point V1 of the discrete 3D grid, the normal vector N1 being calculated as a function of the Hounsfield value H1 of the respective point V1 and of the Hounsfield Hj values of the points Vj which lie in a neighborhood of the point V1, the Hounsfield H1 values , Hje being determined starting from the output of the scanning device, where the normal vector N1 is calculated using the formula where and the vector is the normalized vector from the point V1 to the point Vj and is calculated using the grid coordinates of V1 and of Vj; – b) calculate an error value E1 for each normal vector N1, where the error value E1 is calculated using the formula – c) far crescere una superficie Sna partire da un punto corrente Vcdella griglia discreta 3D seguendo i passi di: – c. 1) creare una coda vuota Q, per contenere i punti della superficie Snidentificati nel successivo passo c.2); – c.2) aggiungere il punto Vcalla coda vuota Q; la superficie Snessendo fatta crescere, aggiungendo alla superficie Sne alla coda Q, ogni punto Vjche giace in un intorno del punto Vcse la condizione Nc· Nj< T2 è verificata, in cui Ncè il vettore normale del punto Vc, Njè il vettore normale del punto Vje T2è un valore di soglia predefinito, fino a quando tutti i punti vicini Vjal punto corrente Vcsono stati considerati e poi cancellare il punto corrente Vcdalla coda Q, mentre se la condizione Nc· Nj< T2non è verificata, il punto Vjnon viene aggiunto alla superficie Sne alla coda Q; – c.3) se c'è almeno un altro punto Vqnella coda Q, impostare c = q e ripetere i passi a partire dal punto c.2); – c.4) se la coda Q è vuota, scegliere il punto successivo della griglia 3D discreta e ripetere i passi da c) a c.3) fino a quando tutti i punti della griglia 3D discreta sono stati considerati e considerare la superficie S1come completamente cresciuta; – d) per ciascuna delle superfici Sifatte crescere secondo i passi c), c.1), c.2) c.3) e c.4), cancellare tutti i punti SVindidentificati con un indice corrente ind, a meno che almeno uno dei punti SVjvicini al punto SVindabbia un valore di errore E1che ha segno opposto rispetto al segno del valore di errore Einddel punto SVind, ove il valore di errore Eindè calcolato utilizzando la formula – c) grow a surface Sna starting from a current point Vc of the 3D discrete grid following the steps of: – c. 1) create an empty queue Q, to contain the points of the surface Sn identified in the following step c.2); – c.2) add the point V to the empty queue Q; the surface Sn and made to grow, adding to the surface Sn and to the tail Q, every point Vj which lies in a neighborhood of the point Vc and the condition Nc· Nj< T2 is verified, where Nc is the normal vector of the point Vc, Nj is the normal vector of the point Vj and T2 is a predefined threshold value, until all neighboring points Vj to the current point Vc have been considered and then delete the current point Vc from the Q queue, while if the condition Nc· Nj< T2 is not verified, the point Vj is not added to the surface Sn and to the tail Q; – c.3) if there is at least one other point Vq in the queue Q, set c = q and repeat the steps starting from point c.2); – c.4) if the Q queue is empty, choose the next point of the discrete 3D grid and repeat steps from c) to c.3) until all the points of the discrete 3D grid have been considered and consider the surface S1 as fully grown; – d) for each of the surfaces grown according to steps c), c.1), c.2) c.3) and c.4), delete all the SVind points identified with a current index ind, unless at least one of the points SVj close to the point SVind have an error value E1 which has the opposite sign compared to the sign of the error value Eind of the point SVind, where the error value Eind is calculated using the formula 2. Metodo secondo la rivendicazione 1, in cui viene eseguita una fase di preselezione dei punti che giacciono in prossimità delle superfici S1della griglia 3D discreta e scartando i punti appartenenti allo stesso tessuto corporeo, la fase di preselezione comprendente il calcolo di un numero G, per ogni punto V1, detto numero Giessendo pari alla somma di tutti i punti nell'intorno Vjdi ogni punto V1che soddisfano la condizione data dalla formula: d(i,j)= Ni· Nj in cui il vettore normale N1è associato al punto V1e il vettore normale Njè associato al punto Vje d(i,j)è inferiore ad una soglia predeterminata T2. 2. Method according to claim 1, in which a preselection phase of the points lying in proximity to the surfaces S1 of the discrete 3D grid is performed and discarding the points belonging to the same body tissue, the preselection phase comprising the calculation of a number G, for each point V1, said number being equal to the sum of all the points in the neighborhood Vj of each point V1 which satisfy the condition given by the formula: d(i,j)= Ni· Nj in which the normal vector N1 is associated with the point V1 and the normal vector Nj is associated with the point Vj and d(i,j) is less than a predetermined threshold T2. 3. Metodo secondo la rivendicazione 2, in cui ogni punto V, che ha il numero Giinferiore alla metà del numero massimo possibile di punti nell'intorno di detto punto V, viene scartato.3. Method according to claim 2, wherein each point V, which has the number Giless than half of the maximum possible number of points in the neighborhood of said point V, is discarded. 4. Metodo secondo la rivendicazione 1, in cui per ciascuna delle superfici S1fatte crescere secondo i passi c), c.1), c.2), c.3) e c.4), il passo d) può essere eseguito in concomitanza con i passi c), c.1), c.2), c.3) e c.4).4. Method according to claim 1, wherein for each of the surfaces S1 grown according to steps c), c.1), c.2), c.3) and c.4), step d) can be performed in concomitance with steps c), c.1), c.2), c.3) and c.4). 5. Metodo secondo la rivendicazione 1, in cui per ciascuna delle superfici S1fatte crescere secondo i passi c), c.1), c.2), c.3) e c.4), il passo d) può essere eseguito prima di detti passi c), c.1), c.2), c.3) e c.4).5. Method according to claim 1, wherein for each of the surfaces S1 grown according to steps c), c.1), c.2), c.3) and c.4), step d) can be performed first of said steps c), c.1), c.2), c.3) and c.4). 6. Metodo secondo la rivendicazione 1, in cui per ciascuna delle superfici S1fatte crescere secondo i passi c), c.1), c.2), c.3) e c.4) della rivendicazione 1, se almeno uno dei valori di errore Ejrelativo ad un punto SVjha un valore positivo, il punto SVindviene considerato come giacente sul bordo di una superficie e non viene scartato.6. Method according to claim 1, wherein for each of the surfaces S1 grown according to steps c), c.1), c.2), c.3) and c.4) of claim 1, if at least one of the values of error Ejrelating to a point SVjhas a positive value, the point SVind is considered as lying on the edge of a surface and is not discarded. 7. Metodo secondo la rivendicazione 1, dove nel passo a) della rivendicazione 1 del calcolo di un vettore normale N1per ogni punto V, di un'immagine generata dal computer viene eseguito impostando N1scelto tra uno dei vettori oppure .7. Method according to claim 1, where in step a) of claim 1 the calculation of a normal vector N1 for each point V, of a computer-generated image is performed by setting N1 chosen from one of the vectors or . 8. Metodo secondo la rivendicazione 1, in cui la griglia 3D discreta è suddivisibile nello stack di piani 2D e i vettori normali N1per ogni punto V1sono calcolati in ciascuno di detti piani 2D ignorando le componenti dei vettori che sono rivolte all'esterno del piano di ciascuna immagine dello stack.8. Method according to claim 1, wherein the discrete 3D grid is subdivided into the stack of 2D planes and the normal vectors N1 for each point V1 are calculated in each of said 2D planes ignoring the components of the vectors which face outside the plane of each stack image.
CH000269/2020A 2020-03-09 2020-03-09 Method for segmenting a discrete 3D grid. CH717198B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CH000269/2020A CH717198B1 (en) 2020-03-09 2020-03-09 Method for segmenting a discrete 3D grid.
PCT/IB2021/051897 WO2021181238A1 (en) 2020-03-09 2021-03-08 A method for the segmentation of a discrete 3d grid

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CH000269/2020A CH717198B1 (en) 2020-03-09 2020-03-09 Method for segmenting a discrete 3D grid.

Publications (2)

Publication Number Publication Date
CH717198A1 CH717198A1 (en) 2021-09-15
CH717198B1 true CH717198B1 (en) 2024-03-28

Family

ID=75143680

Family Applications (1)

Application Number Title Priority Date Filing Date
CH000269/2020A CH717198B1 (en) 2020-03-09 2020-03-09 Method for segmenting a discrete 3D grid.

Country Status (2)

Country Link
CH (1) CH717198B1 (en)
WO (1) WO2021181238A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116402988B (en) * 2023-05-11 2023-12-19 北京冰河起源科技有限公司 Three-dimensional model processing method, device and storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920319A (en) * 1994-10-27 1999-07-06 Wake Forest University Automatic analysis in virtual endoscopy
AU2003216295A1 (en) * 2002-02-15 2003-09-09 The Regents Of The University Of Michigan Lung nodule detection and classification
EP1975877B1 (en) * 2005-11-23 2018-09-19 Agfa HealthCare N.V. Method for point-of-interest attraction in digital images
FR2897455A1 (en) * 2006-02-13 2007-08-17 Univ Hokkaido Nat Univ Corp DEVICE, METHOD AND PROGRAM FOR SEGMENTING DATA OF MODEL IN TREILLIS
CN104809730B (en) * 2015-05-05 2017-10-03 上海联影医疗科技有限公司 The method and apparatus that tracheae is extracted from chest CT image
CN109325998B (en) * 2018-10-08 2023-06-30 香港理工大学 Indoor 3D modeling method, system and related device based on point cloud data

Also Published As

Publication number Publication date
WO2021181238A1 (en) 2021-09-16
CH717198A1 (en) 2021-09-15

Similar Documents

Publication Publication Date Title
Ferradans et al. Regularized discrete optimal transport
Rad et al. Evaluation of current dental radiographs segmentation approaches in computer-aided applications
CN109146899A (en) CT image jeopardizes organ segmentation method and device
JP2022516154A (en) Artificial intelligence segmentation of tissue images
CN104933707B (en) A kind of super-pixel reconstruct segmentation and method for reconstructing based on multiphoton confocal microscopic cell images
Bağci et al. Automatic best reference slice selection for smooth volume reconstruction of a mouse brain from histological images
Poon et al. Efficient interactive 3D Livewire segmentation of complex objects with arbitrary topology
CH717198B1 (en) Method for segmenting a discrete 3D grid.
Jung et al. Combining volumetric dental CT and optical scan data for teeth modeling
US20200334827A1 (en) Automatic segmentation process of a 3D medical image by one or several neural networks through structured convolution according to the anatomic geometry of the 3D medical image
Grosland et al. A voxel-based formulation for contact finite element analysis
Carlinet et al. A color tree of shapes with illustrations on filtering, simplification, and segmentation
CN110524886B (en) Three-dimensional model forming method in 3D printing method and 3D printing method
Campadelli et al. Fully automatic segmentation of abdominal organs from CT images using fast marching methods
Malmberg et al. Sub-pixel segmentation with the image foresting transform
Arica et al. A plain segmentation algorithm utilizing region growing technique for automatic partitioning of computed tomography liver images
Knötel et al. Automated segmentation of complex patterns in biological tissues: lessons from stingray tessellated cartilage
Carlinet et al. A morphological tree of shapes for color images
Ampilova et al. Application of fractal and multifractal analysis algorithms to image segmentation and classification
Massey Creating AustinMan: an electromagnetic voxel model of the visible human
Battiato et al. 3D CT Segmentation for Clinical Evaluation of Knee Prosthesis Operations.
SenthilKumaran Edge detection for dental x-ray image segmentation using neural network approach
CN107408301A (en) Use segmentation of the Air conduct measurement to the object in view data
Xie et al. Image fusion based on multi-objective optimization
Blanco-Trejo et al. Fractal topological analysis for 2D binary digital images

Legal Events

Date Code Title Description
PK Correction

Free format text: MODIFICA DEL REGISTRO ESAME RELATIVE AL CONTENUTO