Giter VIP home page Giter VIP logo

mamut's People

Contributors

bene51 avatar ctrueden avatar dscho avatar hinerm avatar ksugar avatar tinevez avatar tpietzsch avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mamut's Issues

Creating links in TrackScheme with "L"

Hi! It seems that the keyboard shortcut "L" (create a link between two spots) does not work on the TrackScheme window. I need to switch to the MaMuT viewer, press "L" and switch back to TrackScheme window. Is this expected?

bigdataviewer-core 10.4.0 breaks compilation

$ mvn -Dbigdataviewer-core.version=10.4.2 clean package
... build fails with:
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /Volumes/Code/fiji/MaMuT/src/main/java/fiji/plugin/mamut/viewer/MamutViewerPanel.java:[80,35] display has private access in bdv.viewer.ViewerPanel
[ERROR] /Volumes/Code/fiji/MaMuT/src/main/java/fiji/plugin/mamut/viewer/MamutViewerPanel.java:[81,35] display has private access in bdv.viewer.ViewerPanel
[ERROR] /Volumes/Code/fiji/MaMuT/src/main/java/fiji/plugin/mamut/viewer/MamutViewerPanel.java:[86,17] currentAnimator has private access in bdv.viewer.ViewerPanel
[ERROR] /Volumes/Code/fiji/MaMuT/src/main/java/fiji/plugin/mamut/viewer/MamutViewerPanel.java:[87,17] currentAnimator has private access in bdv.viewer.ViewerPanel
[INFO] 4 errors

Because bigdataviewer/bigdataviewer-core@2530336 changed some fields from protected to private.

This is a problem for the SciJava BOM because we want to update bigdataviewer-core to version 10.4+, but MaMuT 0.7.5 does not work with those BDV versions.

The solution is to update MaMuT not to use those protected fields anymore.

CC @tinevez @tpietzsch

TGMM import fails with NullPointerException

Hi,

I tried to visualized TGMM tracking results with MaMuT. However, as soon as I press the button Import TGMM results in MaMuT a new Fiji Exception window pops-up with the error message:

(Fiji Is Just) ImageJ 2.0.0-rc-69/1.52p; Java 1.8.0_66 [64-bit]; Windows 10 10.0; 82MB of 24450MB (<1%)
 
java.lang.NullPointerException
	at fiji.plugin.mamut.ImportTGMMAnnotationPlugin_.showDialog(ImportTGMMAnnotationPlugin_.java:151)
	at fiji.plugin.mamut.ImportTGMMAnnotationPlugin_.run(ImportTGMMAnnotationPlugin_.java:136)
	at ij.IJ.runUserPlugIn(IJ.java:230)
	at ij.IJ.runPlugIn(IJ.java:193)
	at ij.Executer.runCommand(Executer.java:137)
	at ij.Executer.run(Executer.java:66)
	at java.lang.Thread.run(Thread.java:745)

Can you help me using MaMuT for reviewing the TGMM results?

MalformedURLException

Hi, I'm trying to use MaMuT 0.28.0 on Windows 7 64bit.

I'm getting the following error (unimportant parts of the file path replaced with foo) after trying to load a mamut XML file.

Problem loading the image data file C:\foo_bdv.xml.
java.net.MalformedURLException: unknown protocol: c

A quick search on Stack Overflow yields this solution https://stackoverflow.com/a/8474725
But I admit I'm not comfortable enough to make a pull request.

Thanks,
Will

Incorrect spatial units stored in the MaMuT file.

We expect MaMuT to grab the spatial units from the XML/H5 files and use it afterwards to report position etc..

However even if the XML/H5 file contains a non-default unit like this:

...
    <ViewSetups>
      <ViewSetup>
        <id>0</id>
        <name>channel 1</name>
        <size>136 151 5</size>
        <voxelSize>
          <unit>micron</unit>
          <size>0.279 0.279 2.5</size>
        </voxelSize>
        <attributes>
          <channel>1</channel>
        </attributes>
      </ViewSetup>

MaMuT will use a default unit:

<?xml version="1.0" encoding="UTF-8"?>
<TrackMate version="7.5.2">
  <Model spatialunits="pixels" timeunits="frames">

Invalid dependency spim_viewer

spim_viewer is not deployed anywhere, besides, @tpietzsch changed the name (actually, split into three completely different names) in https://github.com/tpietzsch/spimviewer.

Worse, even going back to the latest commit still declaring the project name spim_viewer does not help: it would not compile in javac. It is really fascinating how many Eclipse users believe they do nothing wrong by using the Eclipse compiler exclusively.

tl;dr MaMuT does not compile.

Launch new and Load commands

Hi, the first time I used MaMuT I was confused with the names of the two commands:

  • "Launch new MaMuT annotation"
  • "Load MaMuT file"

Launch and Load are different words for the same action and annotation and file are also two words for the same thing. It might be clearer if the commands were something like this:

  • "New MaMuT annotation"
  • "Open MaMuT annotation"

Pretty minor issue, but maybe it helps.
Cheers

Add intermediate spots to existing edge

Is there a way to add intermediate spots along an existing edge (area highlighted in the black rectangle)?

screenshot from 2016-11-24 22-55-46

After some trying, the quickest way I found was to:

  1. Turn auto-linking on.
  2. Select top cell.
  3. Go through frames adding auto-linked spots.
  4. When the bottom cell appears on the viewer, shift-click to select it with previous and press L key to link.
  5. Go to TrackScheme, click the previous edge and delete it.
  6. Refresh layout.

Is there a quicker or an official way to do it?

Cheers

Make the manual change of radius fully reversible.

From Carten Wolff.

I also have an idea of something to improve MaMuT. It is about the spot
radius. Using the the 'q' and 'e' buttons to de- or increase the radius
works nicely but it changes the radius not even way. I mean that if I
press (accidentally) the 'q' and decrease the radius by doing it and I
immediately (would like to redo this and ) press 'e' to increase the
radius again it does not change it back to the original size. It is
about the facor 0,9 and this causes over time a vast amount of different
values for the radius. In the first place it is not a big problem
because you can approximate the size of the value and differences are
not noticable. But when it comes to making general changes of the radius
or to bring all spheres representing a cell to the same size it is more
difficult and I have to edit the xml-file. And here gets even more
tricky because I have 15 decimal places and according to what I said
before a lot of them can be different especially in the decimal places.

Persistent display settings

Hello

The display options such as spot radius, track display mode and "color by" are not persistent. These settings are lost after saving, closing and re-opening the MaMuT file.

Is there a way to save the current state of display options? If these display options can be loaded from file (instead of having to manually adjust every restart), it would be very handy for exporting movies with diverse colorschemes that highlight different aspects of the lineage.

Cheers,
Bruno

Change the radius in batch using TrackScheme menu and selection.

From Carsten Wolff.

Would there be a way to implement the possibility to edit the radius in
the TrackScheme as we can change the color. Very convenient because I
can do it quickly for single cells, for branches, for the whole lineage,
or from certain time point on without big effort.

Import of TGMM results fails

When I import results from TGMM to MaMuT, the plugin does so without showing any error message. Indeed the spots locations are imported correctly (see 1st screenshot). However, the tracks are very "chaotic". It seems like the wrong spots are connected. I then went back to the xml-files from TGMM to check if this was causing trouble. Nevertheless, when plotting these tracks with MATLAB they are fine (see 2nd screenshot). I'm using MaMuT version 0.28.0.
failedtgmmimport
howitshouldlooklike

Large spot IDs collapse to same value

When I tried to open an annotation XML created by another script (i.e., not by manual annotations within MaMuT), only one "Spot" per frame was shown, although the XML file contains a few hundred per frame. The problem seems to be the use of large IDs. My annotation XML contains spots with:

        <Spot ID="19152000001" ...  />
        <Spot ID="19152000002" ... />
        <Spot ID="19152000003" ...  /> 
        ...

By changing the IDs to

        <Spot ID="1000001" ...  />
        <Spot ID="1000002" ... />
        <Spot ID="1000003" ...  /> 
        ...

I can see all spots as expected. I suspect that somewhere during reading of the XML, the IDs get converted to float32, causing collapsing of similar large values:

In [3]: int(np.float32(19152000001))
Out[3]: 19152001024

In [4]: int(np.float32(19152000002))
Out[4]: 19152001024

In [5]: int(np.float32(19152000003))
Out[5]: 19152001024

In [6]: int(np.float32(1000001))
Out[6]: 1000001

In [7]: int(np.float32(1000002))
Out[7]: 1000002

In [8]: int(np.float32(1000003))
Out[8]: 1000003

Import Trackmate .csv files in MaMut

Functionality to import the annotation and/or track results from Trackmate into MaMut by which the manual or semi-automatic annotation/tracking step of MaMut can be skipped. Since MaMut inherits the same visualization functionalities as of Trackmate like the Trackscheme, just importing Trackmate *.csv files for the same dataset should transfer all the tracking and annotation data already done by Trackmate and then The BigDataViewer functionality of MaMut can be used to update the lineages.

Cannot Save Mamut file

Hi, there seems to be an issue with communicating with the Trackmate API on saving files

Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: fiji.plugin.trackmate.io.IOUtils.askForFileForSaving(Ljava/io/File;Ljava/awt/Frame;Lfiji/plugin/trackmate/Logger;)Ljava/io/File;
	at fiji.plugin.mamut.MaMuT.save(MaMuT.java:747)
	at fiji.plugin.mamut.gui.MamutGUI.lambda$new$4(MamutGUI.java:82)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6539)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

This was tested on a Fresh install of Fiji, with everything up to date. To repeat:

  1. Open a new mamut file from a BDV XML
  2. Add annotations (or not)
  3. Save

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.