Closed kushalkolar closed 1 year ago
For using OnACID outputs, we can use the cnmf extensions that alresdy exist in mesmerize-core
. We can probably just subclass the existing CNMFSeriesExtensions
and override get_output()
. Or we can create a common interface for mesmerize-core
CNMF output API and serenity
cnmf output. This will need more thought.
try the following:
Create a circular shared memory rolling buffer
SMRB
. Maybe wrap this in an object with methods that allow you to "mark that a frame has been read", and "get the least recent unread frame".Dump frames into a
SMRB
for "raw data". Just read from SSD and dump them into the raw-dataSMRB
as fast as possible.From another python kernel, read from the
SMRB
and useOnACID
tofit_frame()
on each frame as they come in. Dump theOnACID
mcorr result into anotherSMRB
(different from raw dataSMRB
of course). The other results,A
,C
, etc. can just be stored in the database or whatever else we end up usingFrom another python kernel, use
fastplotlib
to read from the rawSMRB
and mcorrSMRB
. Only this kernel should be used for "mark a frame that has been read" for bothSMRB
s.