aI-lab-glider / radiotherapy-plans-backend

3 stars 0 forks source link

How-to: korzystanie z kodu Julii w backendzie #1

Open mateuszbaran opened 3 years ago

mateuszbaran commented 3 years ago

Przygotowanie środowiska do pracy w Julii:

  1. Proszę ściągnąć Julię w wersji 1.6.2: https://julialang.org/downloads/ . Osobiście pracuję na Linuksie i mam link symboliczny do pliku binarnego Julii:
    lrwxrwxrwx  1 root root       39 Aug  7 12:48 julia -> /home/mateusz/bin/julia-1.6.2/bin/julia
  2. Do edycji i uruchamiania polecam edytor VSCode z wtyczką do Julii. Jak ktoś woli to może być też Atom albo vim czy coś innego.
  3. Przykładowe pliki DICOM ściągamy stąd: https://nbia.cancerimagingarchive.net/nbia-search/ . Jak nic nie pomyliłem to ten manifest: NBIA-manifest-1609878237056.tcia.zip powinien pozwolić na ściągnięcie właściwych plików. Ze strony NBIA należy tylko ściągnąć NBIA Data Retriever
  4. Muszę trochę poprawić swoje skrypty aby poprawnie działały z DICOMami HNSCC, dam znać jak to już będzie gotowe. Wstępnie skany CT mi się już wczytują ale chcę trochę uporządkować skrypt.
  5. Aby korzystać ze skryptu w trybie ineraktywnym trzeba w Julii przejść do folderu z plikiem Project.toml i wykonać polecenie activate: https://pkgdocs.julialang.org/v1/environments/ , a następnie instantiate. Być może trzeba będzie wgrywać na repozytorium plik Manifest.toml, to się zobaczy.

W razie problemów proszę pisać do mnie na Slacku lub tu w tym issue.

Treborsky commented 3 years ago

Razem z @Qwebeck spróbowaliśmy odpalić ten skrypt razem z dicom'ami ściągniętymi poprzez podany manifest. Nie udało się przejść przez cały pipeline, bo mieliśmy dwa problemy:

  1. Pętla w wywyołaniu funkcji roi_masks = extract_roi_masks(ct_files[1], dcm_rs), w 324 linii rzucała błędy MethodError(iterate, (Nothing, ) <jakiś adres>).
  2. Brakowało definicji struktury DoseData LoadError: UndefVarError: DoseData not defined

Dodaliśmy kilka brakujących pakietów do Project.toml

mateuszbaran commented 3 years ago

Dziękuję za zgłoszenie, po tym commicie: https://github.com/Project-Summer-AI-Lab-Glider/radiotherapy-plans-backend/commit/5bbe6f64833815719abfcd9322b0271bec223867 powinno już działać. Dodatkowo przygotowywanie masek dla ROI jest teraz dużo szybsze.

Qwebeck commented 3 years ago

Otwieram z powrotem, bo myślę, że instrukcja uruchomienia nigdy nie zaszkodzi :)