MeVisLab - MeVisLab

MeVisLab
Mevislab logo.png
Ontwikkelaar(s) MeVis Medical Solutions AG , Fraunhofer MEVIS
Eerste uitgave 1993 ; 28 jaar geleden ( 1993 )
Stabiele vrijlating
3.4.1 / 18 november 2020 ; 9 maanden geleden ( 2020-11-18 )
Besturingssysteem Cross-platform
Type
Vergunning Eigendom
Website www .mevislab .de

MeVisLab is een platformonafhankelijk applicatieraamwerk voor medische beeldverwerking en wetenschappelijke visualisatie . Het bevat geavanceerde algoritmen voor beeldregistratie , segmentatie en kwantitatieve morfologische en functionele beeldanalyse. Er is een IDE beschikbaar voor grafische programmering en snelle prototypes van de gebruikersinterface.

MeVisLab is geschreven in C++ en gebruikt het Qt-framework voor grafische gebruikersinterfaces. Het is platformonafhankelijk beschikbaar op Windows, Linux en Mac OS X. De softwareontwikkeling gebeurt in samenwerking tussen MeVis Medical Solutions AG en Fraunhofer MEVIS.

Er is een freeware-versie van de MeVislab SDK beschikbaar (zie Licenties ). Open source-modules worden geleverd als MeVisLab Public Sources in de SDK en zijn beschikbaar via het MeVisLab Community- en Community Sources-project .

Geschiedenis

De ontwikkeling van MeVisLab begon in 1993 met de software ILAB1 van het CeVis Institute, geschreven in C++. Het maakte het mogelijk om interactief algoritmen van de Image Vision Library (IL) op Silicon Graphics (SGI) te verbinden om beeldverwerkingsnetwerken te vormen. In 1995 nam de nieuw opgerichte MeVis Research GmbH (die in 2009 Fraunhofer MEVIS werd ) de ontwikkeling van ILAB over en bracht ILAB2 en ILAB3 uit. OpenInventor en Tcl- scripting waren geïntegreerd, maar beide programma's draaiden nog steeds alleen op SGI.

In 2000 werd ILAB4 uitgebracht met de kern herschreven in Objective-C voor Windows. Om afstand te kunnen nemen van het SGI-platform, werd de Image Vision Library vervangen door de platformonafhankelijke, in-house ontwikkelde MeVis Image Processing Library (ML). In 2002 werd de code aangepast om te werken aan het applicatieraamwerk Qt.

In 2004 werd de software uitgebracht onder de naam MeVisLab. Het bevatte een verbeterde IDE en was beschikbaar op Windows en Linux. Zie de releasegeschiedenis voor details.

In 2007 werd MeVisLab overgenomen door MeVis Medical Solutions AG . Sindsdien is MeVisLab voortgezet als een samenwerkingsproject tussen de MeVis Medical Solutions en Fraunhofer MEVIS.

Functies

Image
Lichaamscentrum weergegeven in MeVisLab

MeVisLab-functies omvatten:

  • Beeldverwerking met de MeVis Image Processing Library (ML) : De ML is een verzoekgestuurde, paginagebaseerde , modulaire, uitbreidbare C++ beeldverwerkingsbibliotheek die tot zes beelddimensies ondersteunt (x, y, z, kleur, tijd, gebruikersafmetingen ). Het biedt een prioriteitsgestuurde paginacache en hoge prestaties voor grote datasets.
  • 2D-beeldweergave : snelle, modulaire, uitbreidbare 2D-viewers met gecombineerde 2D / 3D- weergave zijn geïmplementeerd, ondersteunen plaatweergave (volumeweergave/ MIP ), overlays, punt-/ROI-selectie, Multiplanar Reformations (MPR) en interactieve bewerking van marker objecten (punten, vectoren, schijven, bollen, enz.)
  • Volumeweergave : er is een hoogwaardige volumerenderer (Giga Voxel Renderer, GVR) op basis van OpenGL / Open Inventor beschikbaar. Het ondersteunt grote afbeelding volumes (bijv 512x512x2000 CT volumes, 12bit), de tijd variërende data (bijvoorbeeld dynamische MRI volumes), opzoektabellen , interactieve regio van belang , sub-volume selectie, modulaire, multi-purpose GLSL shader kader.
  • DICOM en andere bestandsindelingen : DICOM wordt ondersteund via een importstap die automatisch reeksen 2D DICOM-frames herkent die tot hetzelfde 3D/4D-beeldvolume behoren. De gegevens kunnen worden doorzocht met een configureerbare DICOM-browser. DICOM-opslag naar PACS is mogelijk. Andere ondersteunde bestandsindelingen zijn onder meer TIFF (2D/3D, RGBA), Analyse, RAW, PNG, JPG, BMP en meer.
  • Gereedschapskaders : Modulaire klassen- en modulebibliotheken voor markeringen, curven, histogrammen , Winged-Edged Meshes (WEM) en Contour Segmentation Objects (CSO) zijn beschikbaar.
  • Qt-integratie : Qt wordt gebruikt als applicatieraamwerk. De Qt API is geïntegreerd via PythonQt , geeft toegang tot Qt Style Sheets, Qt Widgets, QT Core-klassen, enz. door scripting vanuit MeVisLab.
  • Ondersteuning voor scripts : Python kan worden gebruikt voor scriptgestuurde toegang tot een groot deel van de MeVisLab-functionaliteit. De scriptbinding aan Qt wordt geïmplementeerd via PythonQt . Voor beeldverwerking via Python is NumPy beschikbaar. Objectgeoriënteerd programmeren in Python in MeVisLab is mogelijk.
  • Geïntegreerde open source bibliotheken voor beeldverwerking en visualisatie : Er zijn drie open source-bibliotheken geïntegreerd: Open Inventor , gebaseerd op de originele SGI-broncode die in 2000 als open source werd uitgebracht; Insight Toolkit (ITK) , beschikbaar gesteld als MeVisLab-modules; Visualization Toolkit (VTK) : beschikbaar gesteld als MeVisLab-modules.
  • Uitgebreide modulebibliotheek: De MeVisLab-modulebibliotheek omvat in totaal 2600 modules, waaronder 800 standaardmodules en 1800 ITK/VTK-modules.

MeVisLab-principes

Image
MeVisLab GUI

MeVisLab is een modulair ontwikkelraamwerk. Op basis van modules kunnen netwerken worden gecreëerd en applicaties worden gebouwd.

Om het creëren van beeldverwerkingsnetwerken te ondersteunen, biedt MeVisLab een IDE die datastroommodellering mogelijk maakt door middel van visuele programmering . Belangrijke IDE-functies zijn de meervoudige documentinterface (MDI) , module- en verbindingsinspecteurs met dockingmogelijkheden, geavanceerde zoek-, scripting- en debuggingconsoles, het genereren van films en screenshots en galerijen, moduletesten en ondersteuning voor foutafhandeling.

In de visuele netwerkeditor kunnen modules worden toegevoegd en gecombineerd om de gegevensstroom en parametersynchronisatie in te stellen. De resulterende netwerken kunnen tijdens runtime dynamisch worden gewijzigd door scripts. Macromodules kunnen worden gemaakt om subnetwerken van modules, scriptfunctionaliteit en algoritmen op hoog niveau in te kapselen.

Bovenop de netwerken kan het medische applicatieniveau met viewers en UI-panels worden toegevoegd. Panelen zijn geschreven in de MeVisLab Definition Language (MDL), kunnen worden gescript met Python of JavaScript en gestyled met behulp van MeVisLab-interne mechanismen of Qt-functies.

Het ontwikkelen van eigen modules geschreven in C++ of Python wordt ondersteund door wizards .

Afbeeldingengalerij

Hoofd weergegeven in MeVisLab Volumeweergave Hart weergegeven in MeVisLab Hart weergegeven in MeVisLab Vezeltracking met MeVisLab

MeVisLab-forum

MeVisLab biedt een zeer goed ondersteund openbaar forum waarin zowel kernontwikkelaars als gebruikers van alle ervaringsniveaus informatie delen. Een gratis registratie is noodzakelijk.

Toepassingsgebieden, onderzoeksprojecten

Image
Applicatie bouwen met MeVisLab

MeVisLab is gebruikt in een breed scala van medische en klinische toepassingen, waaronder operatieplanning voor lever, long, hoofd en nek en andere lichaamsgebieden, analyse van dynamische, contrastversterkte borst- en prostaat-MRI, kwantitatieve analyse van neurologische en cardiovasculaire beeldreeksen, orthopedische kwantificering en visualisatie, volumetrie van tumorlaesies en therapiemonitoring, verbeterde visualisatie van mammogrammen, 3D-borstechografie en tomosynthesebeeldgegevens, en vele andere toepassingen. MeVisLab wordt ook gebruikt als trainings- en leermiddel voor beeldverwerking (zowel algemeen als medisch) en visualisatietechnieken.

MeVisLab is en is gebruikt in veel onderzoeksprojecten, waaronder:

  • VICORA VICORA Virtuelles Institut für Computerunterstützung in der persoonlijke Radiologie (2004-2006)
  • DOT-MOBI
  • HAMAM

Op basis van MeVisLab is de MedicalExplorationToolkit ontwikkeld om applicatieontwikkeling te verbeteren. Het is beschikbaar als AddOn-pakket voor MeVisLab 1.5.2. en 1.6 op Windows.

MeVisLab kan ook worden gebruikt om oppervlaktemodellen van biomedische beelden te genereren en deze in Universal 3D- formaat te exporteren voor inbedding in PDF- bestanden.

Licenties

De MeVisLab SDK kan gratis en zonder voorafgaande registratie worden gedownload. De software kan onder drie verschillende licentiemodellen worden gebruikt:

  • MeVisLab SDK niet geregistreerd: dit licentiemodel is van toepassing als de MeVisLab SDK wordt gebruikt zonder een extra licentiebestand. Onder deze licentie is een beperkte functieset beschikbaar. De gebruiksvoorwaarden zijn identiek aan die van de niet-commerciële MeVisLab SDK (zie hieronder).
  • Niet-commerciële MeVisLab SDK-licentie: Voor strikt privégebruik of voor gebruik bij niet-commerciële instellingen, zoals universiteiten, andere academische instellingen of non-profitorganisaties. Volledige functieset, vereist een apart licentiebestand met kosten.
  • Commerciële MeVisLab SDK-licentie: Voor gebruik bij commerciële bedrijven, instellingen of onderzoekslaboratoria. Volledige functieset, vereist een apart licentiebestand met kosten.

Geen van de bovenstaande licentiemodellen staat de herdistributie van de MeVisLab SDK of delen daarvan toe, of het gebruik van MeVisLab of delen daarvan als onderdeel van een commerciële dienst of product.

De Fraunhofer MEVIS Release Modules zijn intellectueel eigendom van Fraunhofer MEVIS en uitsluitend voor niet-commerciële doeleinden.

Gerelateerde open source projecten

MeVisLab openbare bronnen

Geselecteerde MeVisLab-modules zijn open source onder een BSD-licentie. Deze bronnen maken deel uit van het MeVisLab SDK-installatieprogramma.

MeVisLab-gemeenschap en gemeenschapsbronnen

In het MeVisLab Community Project worden open source modules voor MeVisLab bijgedragen door een aantal instellingen. Medewerkers vanaf 2010 zijn:

De broncode wordt vrijgegeven onder BSD- of LGPL-licentie en beheerd in een centrale repository op SourceForge. Voor verschillende platformen worden continue builds aangeboden.

PythonQt

PythonQt is een Python-scriptbinding voor het Qt-framework . Het werd oorspronkelijk geschreven om MeVisLab scriptable te maken en werd vervolgens in 2007 als open source gepubliceerd onder LGPL . Een introductie van PythonQt werd gepubliceerd in Qt Quarterly, waarin ook een vergelijking met Pyqt is opgenomen .

PythonQt-bronnen en documentatie zijn verkrijgbaar bij SourceForge.

Vergelijkbare softwareprojecten

  • Slicer (3DSlicer) , een open source, multiplatformproject voor beeldanalyse en wetenschappelijke visualisatie; oorspronkelijk ontwikkeld door het Surgical Planning Laboratory van het Brigham and Women's Hospital en het MIT Artificial Intelligence Laboratory
  • SCIRun is een open source, multi-platform wetenschappelijke probleemoplossende omgeving (PSE) voor het modelleren, simuleren en visualiseren van wetenschappelijke problemen, ontwikkeld door het Center for Integrative Biomedical Computing van het Scientific Computing and Imaging Institute van de University of Utah
  • MITK , de Medical Imaging Interaction Toolkit is een open source-project voor de ontwikkeling van interactieve medische beeldverwerkingssoftware, ontwikkeld aan het Deutsche Krebsforschungszentrum, Heidelberg
  • Voreen , een open source, multi-platform volume rendering engine, onderhouden door de Visualization and Computer Graphics Research Group (VisCG) aan de Universiteit van Münster
  • DeVIDE , een open source, multi-platform software voor rapid prototyping, testen en implementatie van visualisatie- en beeldverwerkingsalgoritmen, ontwikkeld door de Visualization-groep van de TU Delft.
  • Amira , commerciële multiplatformsoftware voor visualisatie, analyse en manipulatie van biomedische gegevens
  • Studierfenster (StudierFenster) , een gratis, niet-commercieel Open Science client/server-based Medical Imaging Processing (MIP) online framework

Zie ook

Referenties

Verder lezen

Externe links