Ich weiß, dass es ein paar Bibliotheken gibt. Aber ich muss meinen eigenen Parser dafür schreiben. Ich bin ein Amateur. Wie gehe ich damit um? Welche Dinge sollte ich wissen, bevor ich versuche, meinen eigenen Parser zu schreiben?Wie analysiert man eine DICOM-Datei (.IMA-Dateien) mit C++?
Antwort
Sie sollten wissen über die DICOM-Regeln für Gebäudeobjekte (so genannte IODs) und encoding rules für Attribute. Dann gelten ein paar rules on file encoding, die du auch kennen solltest. Die DICOM cookbook ist ein guter Ausgangspunkt, um sich mit den Begriffen und Prinzipien des Standards vertraut zu machen.
Allerdings stimme ich @Amit Joshi zu, dass ich davon abraten würde, einen Parser von Grund auf neu zu schreiben - es gibt viele gute Toolkits, einige von ihnen sind kostenlos. Insbesondere sind die Codierregeln nicht trivial und erfordern eine Menge Effor, um alle Fälle abzudecken (z. B. Übertragungssyntaxen, Sequenzcodierung).
Eigentlich möchte ich nur, dass der Parser einige Tags und Attribute extrapoliert, wobei alle Pixeldaten des Bildes ignoriert werden. Wäre der Prozess noch so kompliziert? –
Das hängt davon ab, ob Sie Bilder eines bestimmten Herstellers/Geräts unterstützen möchten oder ob Sie für ein Bild geöffnet sein möchten. Dennoch frage ich mich, welchen Nutzen Sie daraus ziehen, statt etwas zu verwenden, das bereits da ist und sich als gut bewährt hat. –
Ich muss nur Attribute von einem Hersteller extrapolieren. Wie soll ich vorgehen? –
- 1. Wie analysiert man eine C-Header-Datei?
- 2. Wie analysiert man eine EPS-Datei mit C#?
- 3. wie man eine Baumdatenstruktur analysiert?
- 4. Wie analysiert man den Befehlsbaum in C++?
- 5. Wie man eine "Binding-Schleife" analysiert
- 6. Wie man ein Stundenformat in c analysiert?
- 7. Wie analysiert man eine Zeichenfolge zu mehreren Typen in C++?
- 8. Wie analysiert man eine Sammlung von C++ - Header-Dateien?
- 9. Wie analysiert man die Textdatei in C#?
- 10. Wie analysiert man eine M3U8-Datei in Objective C?
- 11. Wie analysiert man Programmlaufzeit
- 12. Wie analysiert man dieses spezifische JSON-Format mit C++ boost
- 13. Wie analysiert man Antlr-Grammatik in JAVA mit C#
- 14. Wie analysiert man HTTP-Header mit libcurl?
- 15. Wie analysiert man eine spärliche Adjazenzmatrix?
- 16. Wie man Text analysiert
- 17. Wie man XML mit ShellScript syntaktisch analysiert?
- 18. Wie analysiert man dieses XML mit Python?
- 19. Wie analysiert man Aggregationspipeline-Ergebnisse?
- 20. Wie analysiert man eine lateinische/ideographische Volltextabfrage korrekt mit Regex?
- 21. Wie analysiert man eine XML Ajax Antwort mit jQuery?
- 22. Wie analysiert man eine Liste in Python mit re
- 23. Wie analysiert man eine .plist-Datei mit PHP?
- 24. Wie analysiert man eine Textdatei mit dem folgenden Muster
- 25. Wie analysiert man eine JSON-Datei mit jQuery?
- 26. Wie man eine Dauer-Zeichenfolge in Sekunden mit Javascript analysiert?
- 27. Wie analysiert man HTTP-Header mit Bash?
- 28. Wie analysiert man eine untergeordnete XML-Eigenschaft mit C# mit XmlDocument?
- 29. Wie analysiert man dies mit GSON?
- 30. Wie analysiert man Daten mit REGEXP_SUBSTR?
Ich fürchte, diese Frage ist ein bisschen zu breit. Mit Google fand ich [DICOM Specification Overview] (https://www.leaddools.com/sdk/medical/dicom-spec), welches (auf den ersten Blick) eine Beschreibung bis auf die Bytes liefert. Wie Sie wahrscheinlich wissen (oder etwas Vergleichbares), was ist das eigentliche Problem? Ich würde diese Beschreibung nehmen und die Arbeit beginnen. (Wenn möglich, ist es hilfreich, ein existierendes Werkzeug zur Hand zu haben, damit Sie Ihre eigenen "parse" -Ergebnisse damit vergleichen können.) – Scheff
Anstatt einen eigenen Parser zu schreiben, können Sie freie Toolkits verwenden, die dafür verfügbar sind. –