You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I built up our analysis pipeline via spikeinterface packages. Initially, I was able to run an internal sorter, spykingcircus2, with this pipeline. However, after I added motion correction modules (have tried both nonrigid_accurate and kilosort-like) into the pipeline, upgraded spikeinterface from 0.99.0 to 0.100.4, I started to see error message when I used the internal sorter (I can use kilosort4 on this pipeline though). Could anyone suggest me what might go wrong?
Here is the code I ran the sorters
Exception has occurred: SpikeSortingError
Spike sorting error trace:
Traceback (most recent call last):
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sorters\basesorter.py", line 258, in run_from_folder
SorterClass._run_from_folder(sorter_output_folder, sorter_params, verbose)
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sorters\internal\spyking_circus2.py", line 118, in _run_from_folder
recording_f = zscore(recording_f, dtype="float32")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\normalize_scale.py", line 296, in init
random_data = get_random_data_chunks(recording, return_scaled=False, **random_chunk_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 556, in get_random_data_chunks
segment_trace_chunk = [
^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 557, in
recording.get_traces(
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\baserecording.py", line 288, in get_traces
traces = rs.get_traces(start_frame=start_frame, end_frame=end_frame, channel_indices=channel_indices)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\common_reference.py", line 182, in get_traces
traces = self.parent_recording_segment.get_traces(start_frame, end_frame, slice(None))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\filter.py", line 132, in get_traces
traces_chunk, left_margin, right_margin = get_chunk_with_margin(
^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 721, in get_chunk_with_margin
traces_chunk = rec_segment.get_traces(
^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sortingcomponents\motion_interpolation.py", line 387, in get_traces
raise NotImplementedError(
NotImplementedError: time_vector for InterpolateMotionRecording do not work because temporal_bins start from 0
Spike sorting failed. You can inspect the runtime trace in Z:\DATA\experiment_openEphys\P-series-32channels\2024-04-22_01-09-50\results_SC2/spikeinterface_log.json.
File "C:\Users\neuroPC\Documents\GitHub\ephys\raw2si.py", line 180, in main
sorting_spikes = ss.run_sorter(sorter_name=this_sorter, recording=recording_saved, remove_existing_folder=True,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\neuroPC\Documents\GitHub\ephys\raw2si.py", line 285, in
recording_saved,sorting_spikes=main(thisDir, json_file)
^^^^^^^^^^^^^^^^^^^^^^^^
spikeinterface.sorters.utils.misc.SpikeSortingError: Spike sorting error trace:
Traceback (most recent call last):
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sorters\basesorter.py", line 258, in run_from_folder
SorterClass._run_from_folder(sorter_output_folder, sorter_params, verbose)
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sorters\internal\spyking_circus2.py", line 118, in _run_from_folder
recording_f = zscore(recording_f, dtype="float32")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\normalize_scale.py", line 296, in init
random_data = get_random_data_chunks(recording, return_scaled=False, **random_chunk_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 556, in get_random_data_chunks
segment_trace_chunk = [
^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 557, in
recording.get_traces(
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\baserecording.py", line 288, in get_traces
traces = rs.get_traces(start_frame=start_frame, end_frame=end_frame, channel_indices=channel_indices)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\common_reference.py", line 182, in get_traces
traces = self.parent_recording_segment.get_traces(start_frame, end_frame, slice(None))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\filter.py", line 132, in get_traces
traces_chunk, left_margin, right_margin = get_chunk_with_margin(
^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 721, in get_chunk_with_margin
traces_chunk = rec_segment.get_traces(
^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sortingcomponents\motion_interpolation.py", line 387, in get_traces
raise NotImplementedError(
NotImplementedError: time_vector for InterpolateMotionRecording do not work because temporal_bins start from 0
Spike sorting failed. You can inspect the runtime trace in Z:\DATA\experiment_openEphys\P-series-32channels\2024-04-22_01-09-50\results_SC2/spikeinterface_log.json.
Here is the spikeinterface_log.json
{
"sorter_name": "spykingcircus2",
"sorter_version": "2.0",
"datetime": "2024-04-25T10:43:19.459617",
"runtime_trace": [],
"error": true,
"error_trace": "Traceback (most recent call last):\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sorters\basesorter.py", line 258, in run_from_folder\n SorterClass._run_from_folder(sorter_output_folder, sorter_params, verbose)\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sorters\internal\spyking_circus2.py", line 118, in _run_from_folder\n recording_f = zscore(recording_f, dtype="float32")\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\normalize_scale.py", line 296, in init\n random_data = get_random_data_chunks(recording, return_scaled=False, **random_chunk_kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 556, in get_random_data_chunks\n segment_trace_chunk = [\n ^\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 557, in \n recording.get_traces(\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\baserecording.py", line 288, in get_traces\n traces = rs.get_traces(start_frame=start_frame, end_frame=end_frame, channel_indices=channel_indices)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\common_reference.py", line 182, in get_traces\n traces = self.parent_recording_segment.get_traces(start_frame, end_frame, slice(None))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\preprocessing\filter.py", line 132, in get_traces\n traces_chunk, left_margin, right_margin = get_chunk_with_margin(\n ^^^^^^^^^^^^^^^^^^^^^^\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\core\recording_tools.py", line 721, in get_chunk_with_margin\n traces_chunk = rec_segment.get_traces(\n ^^^^^^^^^^^^^^^^^^^^^^^\n File "c:\Users\neuroPC\anaconda3\envs\ibl\Lib\site-packages\spikeinterface\sortingcomponents\motion_interpolation.py", line 387, in get_traces\n raise NotImplementedError(\nNotImplementedError: time_vector for InterpolateMotionRecording do not work because temporal_bins start from 0\n",
"run_time": null
}
The text was updated successfully, but these errors were encountered:
I built up our analysis pipeline via spikeinterface packages. Initially, I was able to run an internal sorter, spykingcircus2, with this pipeline. However, after I added motion correction modules (have tried both nonrigid_accurate and kilosort-like) into the pipeline, upgraded spikeinterface from 0.99.0 to 0.100.4, I started to see error message when I used the internal sorter (I can use kilosort4 on this pipeline though). Could anyone suggest me what might go wrong?
Here is the code I ran the sorters
Here is the error message.
Here is the spikeinterface_log.json
The text was updated successfully, but these errors were encountered: