Code Monkey home page Code Monkey logo

fetchupgrades's People

Contributors

davidackerman avatar

Watchers

 avatar  avatar

fetchupgrades's Issues

Percentile Reset

Reset button for percentile in histogram should go to zero, or nothing or -1.

Fill holes in Tiling

If a hole is created during tiling, it should be filled so that it is imaged.

Mirror script, missing acquisition tiles

Relatively often the mirror script will create an empty acquisition file on the network and delete the file on scratch meaning that we have to manually reenter all the information. Maybe introduce a file size check here.

2d tiling file

For the sake of simplicity and for the problems stated above it would be preferable to have the tiling file store info in 2d and be agnostic to things like slice thickness and overlap.

Mirror script. last in first out

When starting the mirror script, files that are already on the scratch are not copied to network. Instead it could write the last file first but continue until the disk is empty. This way the mirror script can catch up when the scope is doing surface find.

Explorable area only expands, does not shrink

When going from one z position to the next, the explorable area only grows from the previous one or remains constant. It would be good if it could also shrink since at the end of the experiment, the remaining portion of the brain is small but the software has to continue searching through whole (largest) explorable area.

Exploration is slow

It would be better if exploration could be done without having to take high resolution images of each tile. Instead, a movie could be continuously acquired while the stage is being moved. When a certain predefined brightness is reached, the tile corresponding to the current stage position would be marked active.

Link lattice z position to cut count

As mentioned in Issue #7, the Z lattice position can easily be corrupted. One way to remedy this is by simply linking the lattice Z position to the 'cut count'.

New default color map

A new colormap is desired in which the order is green, red, blue and magenta which will be the default.

Stage height variation depends on where it starts

The final z height of the stage right before imaging varies based on whether the stage moves up or down. To avoid this issue, it would be better to always move the stage a fixed height from its final location before it is moved to the final location. In this way, it the offset in its height should be constant.

Safe Z height for stage

To use the vibratome, the stage is lowered to a safe position. This should be implemented better, with at least a minimum safe z height so that it can't be lowered below that.

Tile selection

When dragging a selection box it is often very unclear which tiles actually fall in the selection. Either change the algorithm or have some visual indicator of what tiles fall under the current selection box.

Stage Speed Incorrect On Startup

On one of the scopes, the stage speed on startup is not correct and is corrected by increasing/decreasing it back to its original value in the GUI. Make sure this is fixed.

Color of found tissue

During 'auto tile' when the program finds tissue in a certain tile it changes the color of the tile to some shade of orange that barely stands out from red.

Add trip detection field in GUI

In GUI, when selecting channel histogram information, add a "Trip Detection Value" or "Trip Detection Intensity Value" to be set so don't have to set it in parameter file.

Sanity Checks When Doing Autotile

Since autotiling is an automated procedure, it is necessary to have sanity checks before it proceeds. These include:

  1. In Stack Acquisition in the GUI, Z Max should be equal to z_size_um in fov in .microscope file and Z Step in GUI should be less than or equal to 1. Otherwise throw error.
  2. In pipeline in the .microscope file, frame_average_count should equal 1, otherwise throw error.
  3. In the GUI in Vibratome Geometry, offset should be between 1 and 2 and should equal dz_mm in .microscope file, otherwise throw error.
    If any of the above fail, refuse to start auottile acquisition.

For cut cycle, want a warning if offset is not set to 0.

Hard coded file numbering

Avoid accidental overwriting of data by having the file id number 'hard coded' so that it always increases by one even across software sessions.

Explored tiles should be a different color

Currently, there is no color distinction in the GUI between explored and explorable. It would be nice if the explored tile were a different color so it was more evident how much progress has been made.

New GUI Settable Values

In Autotile GUI, change Intensity threshold to Autotile threshold and below it add a feild for surface find threshold.
In Video Acquisition GUI, frame average counts should be settable.

Speed up Explore

During explore, continuously have movie going, then when get to tile and stop, take last frame. This should save time. Also, when it expands to search around found tissue, it goes from one side of the tissue to the other rather than going based on proximity. Would be faster to go to nearest tiles first

Alazar error

Every 6k tiles or so fetch will stop because the Alazar digitizer will throw an error. This will cause fetch to stop even though you can always simply restart the autotile right away. Would be best if the software simply waits a few seconds and retries to start imaging a volume.

Create file when crashes

Would be good if a file was created as the software crashes, which could then be used to notify users via their monitoring system.

Start autotile procedure at fixed z location

Right now after stopping imaging halfway through a slice the software does the surface find again which can now give a very different number (off by ~10 um). This can cause problems for us in the stitching procedure. Would therefor be nice to have the option to start at the current z position.

Contrast menu with histogram

Min/max contrast can only be set automatically by pressing the number of the channel. Often this method does not give you the desired result. Having a menu with a histogram and sliders would be a big improvement.

Scheduled stop

Have an option to make the microscope stop the next time it does a cut and starts doing the 'auto tile' process. This is the safest possible time to stop. We can use this to safely stop the microscope and perform some 'maintenance' (e.g. clean the objective and bath).

Active tile dilation should be performed after surface find

Sometimes there are two non-continuous chunks of brain in a slice that need to be imaged. When tile dilation occurs, it can wind up joining these two junks in which case surface find is searching locations where there is no brain. In general, doing surface find on these dilated tiles is not necessary since they will be imaged anyway. Better to just have dilation occur after surface find.

Need warnings when parameters are overwritten, eg. tiling file overwriting settings

Improvements can be made to the software so that it is made more clear when parameters get overwritten. For instance, loading in a .tiling file will result in the settings' "overlap" being overwritten. This should throw some kind of warning. Also, when saving a settings file, all parameters get updated with those from the settings file. Would be nice if only those that were changed in the file were updated; this would prevent overwriting changes made with the GUI. Could possibly do this by storing the previous settings, and only updating those parameters that were changed in the settings file.

Display field when white

Even though the scope kept collecting data correctly, the view (except for the GUIetc.) was white. And the square in the bottom left may also have still been visible.

Stage referencing update

After referencing the stage in Fetch the Stage position boxes do not update or show the correct value. It is correct though after restarting the software.

Software crashes upon date change

From Johan: "I cant be a hundred procent sure this description is correct so you may have to test it yourself but it seems that when the scope did a cut and start imaging again on a new day (meaning that date changed since the last tile on the previous slice was imaged) then the software simply crashes."

Stopping during exploration incorrectly turns tiles to active

When exploration is stopped, many of the tiles (including many unexplored ones) are set to active. The correct behavior would be to stop the exploration where at the current state. This would ensure that it can resume where it left off, rather than skipping all the tiles that are incorrectly marked active.

Change cut thickness 'on the fly'

Over time the measured slice thickness can change but it is currently not possible to modify the offset or cut thickness as the recording is happening. Also changing the offset often causes changes in the tiling file that can make the made progress (or 'done' tiles) disappear and corrupt the lattice position causing 2 files in separate slices to be in the same lattice positions.

After slice, take stack at different intensity at specific xyz

There will be a separate reference on the stage at a specific xyz position that will be imaged and used for calibration. So the process will be: after slice and before explore or surface find, move to specific xyz and take a stack at a separate laser intensity. This will be a setting in the .microscope file that will allow the user to choose v_open (percentage) for this specific task. This will be used to change one of the pockels.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.