ReiHashimoto

Results 9 issues of ReiHashimoto

- Visualizeの場合、得られるデータがワークフロー実行前/後のどちらのものか判定がつかなくなる - Reproduceの場合、実行中のワークフローがフロントエンドでは破棄されてしまう - なお、バックエンドでは継続して動作し続ける 上記のような整合性の問題や予期せぬバグの要因となりうるため、ワークフロー実行中の一部動作を制御する - Visualizeタブの非活性化 - Reproduceボタンの非活性化(またはRecordタブの非活性化)

enhancement
frontend

- suite2pのmotion correction(registration)の結果から画像データを抽出したい - 現状suite2p_registrationの結果は以下のような理由でNWBには保存していない模様 - suite2pのopsパラメータに落とし込んでいる - データとして大きくなりがち - opsからmotion correctionに相当する画像を抽出して、ImageDataとしてのoutputおよびnwbへの保存を行う - ImageDataとしてoutputすることで、suite2p_registration→caiman_cnmfなどの組み合わせも可能になる可能性がある - 関連 - #536

enhancement

解析上必須ではあるが、デフォルト値を設定したくない(あるいは必ずユーザーに確認してほしい)パラメータ(fsなど)に対してのアプローチ デフォルト値は空にしつつ、RUNクリック時にバリデーションを行う機能など

enhancement

https://github.com/flatironinstitute/CaImAn/blob/main/demos/notebooks/demo_multisession_registration.ipynb input - (1) sparse行列(csc_matrix)のリスト - caiman_cnmfのestimates.Aを利用 - 現状NWBに保持されていないため、cnmf, cnmfeの際にNWBへ保存する必要がある - scipy.sparseに対応するデータクラスを追加する - (2) cell imageのリスト - meag_imgなど - ImageData型として受ける いずれもリストで受け取る必要があるため、複数のinputノードを受け付け可能な仕様にする必要がある。 基本的には同一データ型のものを同じコネクタに複数連結する。 (1), (2)で入力順序の対応関係が一致するようにする必要があるが、これはファイル名昇順でそれぞれのデータ型のファイルをソートした際の同一の順序のもの同士が対応しているとみなす。 HDF5ファイルノードが複数データを受付け可能な仕様になっていないため、改修する。 (studio/app/common/core/rules/file_writer.py hdf5)

enhancement

## 概要 以下のアルゴリズムノードを新規に追加 - preprocess - deconvolve 以下の処理に関するパラメータの追加・セクション分け - evaluation ## 詳細 ### preprocess https://github.com/flatironinstitute/CaImAn/blob/main/caiman/source_extraction/cnmf/cnmf.py#L977-L989 現行のcnmf同様にcnmf.CNMFのオブジェクトを生成し、上記メソッドを呼び出す - 入出力のYrがImageDataの配列 - 利用するパラメータは以下の処理で使用されているものを使う - https://github.com/flatironinstitute/CaImAn/blob/main/caiman/source_extraction/cnmf/pre_processing.py#L488-L557 - ただし、n_processes, dviewはparameterのyamlには含めず、現行のcnmfのようにsetup_clusterで取得 - また、CNMFParamsの引数に含まれていないものは、change_params()メソッドで更新をかける ### deconvolve https://github.com/flatironinstitute/CaImAn/blob/main/caiman/source_extraction/cnmf/cnmf.py#L724-L775...

enhancement

## 課題 - frame数が多いデータの際に、TimeSeriesのプロット表示に時間がかかる ## 対策 ### Frontend - デフォルトの上限値を設ける - プロット選択時の`outputs/inittimedata` API結果取得時に、総frame数が取得できる - 総frame数を表示する欄を追加 - 取得するframe範囲(start, end)を指定するフォームを追加 - 既存のxrange(left, right)は上記frame範囲内で指定する ### Backend - `outputs/timedata` APIにstart, endクエリパラメータ(optional)を追加 - Frontendで指定したframe範囲内のデータのみ返却する

## 概要 - 各関数のパラメータが何を示すか、GUI上でわかるようにしたい ## 方針案 ### Frontend - サイドバーでパラメータ名をクリックした際に[popover](https://mui.com/material-ui/react-popover/)でdescriptionを表示させる ![Screenshot 2023-05-26 at 13 37 54](https://github.com/oist/optinist/assets/42664619/e37c74d8-234d-4bc1-bf5c-8ede071faf4a) #### 主な改修対象 - `frontend/src/components/common/ParamFormItemCreator.tsx` - `ParamChildItem`がRightDrawerのパラメータキー部分のため、こちらにpopoverを追加 - `frontend/src/utils/param/ParamType.ts` - `frontend/src/api/params/Params.ts` - `frontend/src/utils/param/ParamUtils.ts`(`convertToParamMap`) - BackendのAPI仕様に対応するようにResponse型などの修正...

enhancement
backend
frontend

## 動作確認 - snakemake, nwbのパラメータを変更してから実行したワークフロー ![Screenshot 2023-05-16 at 8 59 19](https://github.com/oist/optinist/assets/42664619/131cce5c-2be1-49aa-886b-006f37db2fd3) ![Screenshot 2023-05-16 at 8 59 59](https://github.com/oist/optinist/assets/42664619/00fcd514-7f18-4d08-a173-6f693c6ecd3f) - 実行完了後にリロード → RECORDからREPRODUCE ![Screenshot 2023-05-16 at 9 09 50](https://github.com/oist/optinist/assets/42664619/42484996-d6b7-4327-bcf8-b773990734ae) ![Screenshot 2023-05-16 at...

bug
backend

## 概要 - experiment.yamlに以下の情報を記録する処理を追加 - snakemakeのプロセスID - conda環境生成の開始・終了時刻 - create envなどにかかっている時間が分かれば良い (重要性は低め)

enhancement
backend