StuartLab / MiNA

MiNA (Mitochondrial Network Analysis) is a project aimed at making the analysis and characterization of mitochondrial network morphology more accurate, faster, and objective. This project currently consists of a set of Python scripts (and JAVA for the user interface) for the Fiji distribution of ImageJ.
GNU General Public License v3.0
25 stars 8 forks source link

Error with MiNA 3.0 #20

Closed FX-Xu closed 3 years ago

FX-Xu commented 3 years ago

Hi, I reinstalled FIJI, installed the newest MiNA 3.0 based on Readme instruction on my macbook. My workflow is: open TIFF image, change it to 8bit file, filters->unsharp mask, CLAHE, plugins->Stuartlab->MiNA Analyze Morphology, after clicking "OK", the error will popup as:

3D [dev] 1.6.0-scijava-2-pre11-daily-experimental daily /Users/Devin_Xu/.ImageJ_3D_Viewer.props (No such file or directory) [ERROR] Traceback (most recent call last): File "/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py", line 273, in run(imp, preprocessor_path, postprocessor_path, threshold_method, user_comment) File "/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py", line 242, in run morphology_tbl.writeRow(output_parameters, mina.tables.commentToDict(user_comment)) File "/Applications/Fiji.app/jars/Lib/mina/tables/_simplesheet.py", line 57, in writeRow self.rt.addValue(key, str(value)) UnicodeEncodeError: 'ascii' codec can't encode characters in position 13-16: ordinal not in range(128)

at org.python.core.codecs.strict_errors(codecs.java:206)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.python.core.JavaFunc.__call__(Py.java:2895)
at org.python.core.PyObject.__call__(PyObject.java:433)
at org.python.core.codecs.encoding_error(codecs.java:1537)
at org.python.core.codecs.PyUnicode_EncodeIntLimited(codecs.java:1210)
at org.python.core.codecs.PyUnicode_EncodeASCII(codecs.java:1169)
at org.python.core.codecs.encode(codecs.java:163)
at org.python.core.PyString.encode(PyString.java:3995)
at org.python.core.PyString.encode(PyString.java:3987)
at org.python.core.PyUnicode.unicode___str__(PyUnicode.java:681)
at org.python.core.PyUnicode.__str__(PyUnicode.java:676)
at org.python.core.PyString.str_new(PyString.java:172)
at org.python.core.PyString$exposed___new__.new_impl(Unknown Source)
at org.python.core.PyType.invokeNew(PyType.java:1119)
at org.python.core.PyType.type___call__(PyType.java:2399)
at org.python.core.PyType.__call__(PyType.java:2389)
at org.python.core.PyObject.__call__(PyObject.java:461)
at org.python.core.PyObject.__call__(PyObject.java:465)
at mina.tables._simplesheet$py.writeRow$3(/Applications/Fiji.app/jars/Lib/mina/tables/_simplesheet.py:52)
at mina.tables._simplesheet$py.call_function(/Applications/Fiji.app/jars/Lib/mina/tables/_simplesheet.py)
at org.python.core.PyTableCode.call(PyTableCode.java:173)
at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
at org.python.core.PyBaseCode.call(PyBaseCode.java:158)
at org.python.core.PyFunction.__call__(PyFunction.java:437)
at org.python.core.PyMethod.__call__(PyMethod.java:156)
at org.python.pycode._pyx1.run$8(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py:263)
at org.python.pycode._pyx1.call_function(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py)
at org.python.core.PyTableCode.call(PyTableCode.java:173)
at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
at org.python.core.PyFunction.function___call__(PyFunction.java:474)
at org.python.core.PyFunction.__call__(PyFunction.java:469)
at org.python.core.PyFunction.__call__(PyFunction.java:459)
at org.python.pycode._pyx1.f$0(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py:273)
at org.python.pycode._pyx1.call_function(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py)
at org.python.core.PyTableCode.call(PyTableCode.java:173)
at org.python.core.PyCode.call(PyCode.java:18)
at org.python.core.Py.runCode(Py.java:1687)
at org.python.core.__builtin__.eval(__builtin__.java:497)
at org.python.core.__builtin__.eval(__builtin__.java:501)
at org.python.util.PythonInterpreter.eval(PythonInterpreter.java:255)
at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:57)
at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:31)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264)
at org.scijava.script.ScriptModule.run(ScriptModule.java:157)
at org.scijava.module.ModuleRunner.run(ModuleRunner.java:165)
at org.scijava.module.ModuleRunner.call(ModuleRunner.java:124)
at org.scijava.module.ModuleRunner.call(ModuleRunner.java:63)
at org.scijava.thread.DefaultThreadService.lambda$wrap$2(DefaultThreadService.java:225)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
RodoVJ commented 3 years ago

@FX-Xu can you please replace the folder "mina" that you have placed inside Fiji.app/jars/Lib/mina with the one I have attached here and tell me if this fixes your issue? Make sure to unzip the folder first.

mina.zip

FX-Xu commented 3 years ago

@RodoVJ hi, thanks for your reply. I have replaced the "mina", but one error still pops up, and here we are:

[INFO] Reading available sites from https://imagej.net/ 3D [dev] 1.6.0-scijava-2-pre11-daily-experimental daily

/Users/Devin_Xu/.ImageJ_3D_Viewer.props (No such file or directory) [ERROR] Traceback (most recent call last): File "/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py", line 273, in run(imp, preprocessor_path, postprocessor_path, threshold_method, user_comment) File "/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py", line 242, in run morphology_tbl.writeRow(output_parameters, mina.tables.commentToDict(user_comment)) File "/Applications/Fiji.app/jars/Lib/mina/tables/_simplesheet.py", line 57, in writeRow self.rt.addValue(key, str(value).encode('utf-8')) UnicodeEncodeError: 'ascii' codec can't encode characters in position 13-16: ordinal not in range(128)

at org.python.core.codecs.strict_errors(codecs.java:206)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.python.core.JavaFunc.__call__(Py.java:2895)
at org.python.core.PyObject.__call__(PyObject.java:433)
at org.python.core.codecs.encoding_error(codecs.java:1537)
at org.python.core.codecs.PyUnicode_EncodeIntLimited(codecs.java:1210)
at org.python.core.codecs.PyUnicode_EncodeASCII(codecs.java:1169)
at org.python.core.codecs.encode(codecs.java:163)
at org.python.core.PyString.encode(PyString.java:3995)
at org.python.core.PyString.encode(PyString.java:3987)
at org.python.core.PyUnicode.unicode___str__(PyUnicode.java:681)
at org.python.core.PyUnicode.__str__(PyUnicode.java:676)
at org.python.core.PyString.str_new(PyString.java:172)
at org.python.core.PyString$exposed___new__.new_impl(Unknown Source)
at org.python.core.PyType.invokeNew(PyType.java:1119)
at org.python.core.PyType.type___call__(PyType.java:2399)
at org.python.core.PyType.__call__(PyType.java:2389)
at org.python.core.PyObject.__call__(PyObject.java:461)
at org.python.core.PyObject.__call__(PyObject.java:465)
at mina.tables._simplesheet$py.writeRow$3(/Applications/Fiji.app/jars/Lib/mina/tables/_simplesheet.py:52)
at mina.tables._simplesheet$py.call_function(/Applications/Fiji.app/jars/Lib/mina/tables/_simplesheet.py)
at org.python.core.PyTableCode.call(PyTableCode.java:173)
at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
at org.python.core.PyBaseCode.call(PyBaseCode.java:158)
at org.python.core.PyFunction.__call__(PyFunction.java:437)
at org.python.core.PyMethod.__call__(PyMethod.java:156)
at org.python.pycode._pyx0.run$8(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py:263)
at org.python.pycode._pyx0.call_function(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py)
at org.python.core.PyTableCode.call(PyTableCode.java:173)
at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
at org.python.core.PyFunction.function___call__(PyFunction.java:474)
at org.python.core.PyFunction.__call__(PyFunction.java:469)
at org.python.core.PyFunction.__call__(PyFunction.java:459)
at org.python.pycode._pyx0.f$0(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py:273)
at org.python.pycode._pyx0.call_function(/Applications/Fiji.app/scripts/MiNA_Analyze_Morphology.py)
at org.python.core.PyTableCode.call(PyTableCode.java:173)
at org.python.core.PyCode.call(PyCode.java:18)
at org.python.core.Py.runCode(Py.java:1687)
at org.python.core.__builtin__.eval(__builtin__.java:497)
at org.python.core.__builtin__.eval(__builtin__.java:501)
at org.python.util.PythonInterpreter.eval(PythonInterpreter.java:255)
at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:57)
at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:31)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264)
at org.scijava.script.ScriptModule.run(ScriptModule.java:157)
at org.scijava.module.ModuleRunner.run(ModuleRunner.java:165)
at org.scijava.module.ModuleRunner.call(ModuleRunner.java:124)
at org.scijava.module.ModuleRunner.call(ModuleRunner.java:63)
at org.scijava.thread.DefaultThreadService.lambda$wrap$2(DefaultThreadService.java:225)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
RodoVJ commented 3 years ago

@FX-Xu Are you passing any user comments? If you are, what are the comments? Also, please try this new "mina" folder. It should fix the bug this time.

mina.zip

FX-Xu commented 3 years ago

@RodoVJ It works! Great! Thanks! By the way, I did not add any user comments.

RodoVJ commented 3 years ago

Glad I could help @FX-Xu !