[PYTHON] Was soll ich mit DICOM von MPEG2 machen?

Ich habe das von Linacs EPID aufgenommene Video im Dicom-Format exportiert. Versuchen Sie wie gewohnt mit Pydicom zu analysieren.

import pydicom
dicom_data = pydicom.dcmread(file_name)

Dann

(0002, 0010) Transfer Syntax UID                 UI: MPEG2 Main Profile / Main Level

Ich verstehe, es ist ein Video. Wie gewöhnlich

array = dicom_data.pixel_array

Wenn ich versuche, das Pixel-Array mit zu bekommen

NotImplementedError: Unable to decode pixel data with a transfer syntax UID of '1.2.840.10008.1.2.4.100' (MPEG2 Main Profile / Main Level) as there are no pixel data handlers available that support it. Please see the pydicom documentation for information on supported transfer syntaxes 

Das geht nicht Ich habe mich gefragt, ob ich es von dicom_data.PixelData aus analysieren kann, aber ich habe mich gefragt, ob es als normale Videodatei analysiert werden kann.

import cv2
cap = cv2.VideoCapture(file_name)

Das ist kein Fehler. Kannst du gehen?

frames = []
while True:
    ret, frame = cap.read()
    if ret == True:
        frame=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY) #Ich habe eine Graustufe
        frames.append(frame)
    else:
        break

Als ich versuchte, etwas zu tun, wurde die Liste der "Frames" erfolgreich erstellt. Wenn Sie dies "np.array (Frames) .shape" nennen

(143, 576, 720)

Sie können sehen, dass es 143 Bilder von 576 x 720 enthält. Danach könnte das erste Bild als "plt.imshow (np.array (frame) [0,:,:])" angezeigt werden.

Es stellte sich heraus, dass es mit opencv als normale Videodatei analysiert werden kann, ohne vorbereitet zu sein, da es sich um eine Dicom-Datei handelt.

Recommended Posts

Was soll ich mit DICOM von MPEG2 machen?
Welche Automatisierung sollte in der Programmiersprache RPA, VBA durchgeführt werden?
Was soll ich denn mit der Python-Verzeichnisstruktur machen?
Was soll ich verwenden, um Typvergleiche in Python durchzuführen?
Ich habe beim Clustering mit k-means versagt, aber was soll ich tun (Implementierung des Kernels k-means)
Was beim Nachahmen zu tun ist, wird in Python eingebettet
Was ich in Python gelernt habe
Ich habe kurz zusammengefasst, was Sie beim Lernen mit / ohne Lehrer beachten sollten
Was tun mit der Installation von Magics?
Was tun mit PYTHON Release?
Ich möchte ○○ mit Pandas machen
Arbeiten mit DICOM-Bildern in Python
Python | Was Sie mit Python machen können
Was ich mit json.dumps in Pythons base64-Codierung süchtig gemacht habe
FBX SDK Welche Fähigkeiten benötige ich, um ein Programm mit Python zu erstellen?
Was Sie mit API Vol.1 tun können
Was tun, wenn Sie sich mit FileNotFoundError in der Dateireferenz verlieren?
Was tun, wenn Sie nicht mit pip in einer Babun-Umgebung installieren können?
Was Sie mit Programmierkenntnissen machen können
Ich möchte den Transferstatus der 2020 J League visualisieren. Was soll ich tun?
Sie werden in 100 Tagen Ingenieur - Tag 35 - Python - Was Sie mit Python tun können
Was ich getan habe, als ich mit Lambda Python im Zeitlimit steckte
Ich möchte Dunnetts Test in Python machen
Was tun, wenn pipreqs zu UnicodeDecodeError führt?
[Python] Was ich getan habe, um Unit Test zu machen
Ich hatte Probleme mit der bedingten Verzweigung in Djangos Vorlagen.
[Frage] Was passiert, wenn Sie% in Python verwenden?
Was tun, um eine Google-Tabelle in Python zu erhalten?
Welchen Befehl sollte ich eingeben, um aktuell verfügbare Module wie Gem List in Python aufzulisten?
Echtzeit-Persönliche Schätzung (Was muss ich tun, um die Schätzung von Bildern außerhalb der Kategorie zu verhindern?) * Fehler.
Was ich getan habe, als ich wütend war, es mit der Option enable-shared einzufügen
Was tun, wenn Sie Python auf IntelliJ ausführen und mit einem Fehler beenden?
Was tun, wenn die Pip-Installation in Xcode 5.1 fehlschlägt?
[openpyxl] Was tun, wenn IllegalCharacterError in pandas.DataFrame.to_excel angezeigt wird?
Ich möchte mit einem Knopf am Kolben übergehen
So führen Sie eine Hash-Berechnung mit Salt in Python durch
Ich war in Schwierigkeiten, weil ich nicht mit Heroku pushen konnte
So führen Sie mit OpenCV ein Null-Padding in einer Zeile durch
Links, um mit Sublime Text zu tun, was Sie wollen
Ich war süchtig danach, 2020 mit Selen (+ Python) zu kratzen
Ich möchte mit einem Roboter in Python arbeiten.
pickle Um zu lesen, was in 2 Serien mit 3 Serien gemacht wurde
Was tun, wenn in pip ein Unicode-Dekodierungsfehler auftritt?
Speichereingabe- / Ausgabememo von Python in Azure-Funktionen
Was Sie mit hstack oder vstack mit dstack nicht machen können
Iframe in Seite mit Selenium kann nicht bearbeitet werden
Beachten Sie, dass ich mich mit HTML in Beautiful Soup befasst habe
Arbeitsnotiz, die ich i18n mit Flask App ausprobiert habe
Was Sie mit Tensorflow 2.x tun können und was nicht
Was ich durch die Teilnahme am ISUCON10-Qualifying gelernt habe
Ich möchte am Ende etwas mit Python machen
Wovon ich süchtig war, als ich mit riesigen Dateien in einer Linux 32-Bit-Umgebung umging
Was Sie bei der Zeitreihendatenanalyse (einschließlich Reflexion) nicht tun sollten