ImageJ hangs on adjust Brighness/Contrast

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

ImageJ hangs on adjust Brighness/Contrast

Iain Marcuson-2
I am running ImageJ 1.52e.  I am using a modified version of the EPICS AD
Viewer plugin and some plugins developed in-house, notably one for image
assembly.  Running the image assembly plugin when it is standalone works.
However, if I acquire an image with the AD Viewer plugin, then assemble
that image, ImageJ hangs on open Brightness/Contrast, and it has to use
kill -9 to stop ImageJ.  I can run other plugins with the AD Viewer plugin
without difficulty.  I can release all the source code, although
reproducing the system uses custom hardware so reproducing the problem may
be tricky.

Thank you,

Iain.

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: ImageJ hangs on adjust Brighness/Contrast

Curtis Rueden
Hi Iain,

You could try generating a thread dump to find out what's causing the hang.
See:

https://imagej.net/Troubleshooting#If_ImageJ_freezes_or_hangs

Regards,
Curtis

--
Curtis Rueden
LOCI software architect - https://loci.wisc.edu/software
ImageJ2 lead, Fiji maintainer - https://imagej.net/User:Rueden


On Mon, Aug 13, 2018 at 10:31 AM, Iain Marcuson <[hidden email]> wrote:

> I am running ImageJ 1.52e.  I am using a modified version of the EPICS AD
> Viewer plugin and some plugins developed in-house, notably one for image
> assembly.  Running the image assembly plugin when it is standalone works.
> However, if I acquire an image with the AD Viewer plugin, then assemble
> that image, ImageJ hangs on open Brightness/Contrast, and it has to use
> kill -9 to stop ImageJ.  I can run other plugins with the AD Viewer plugin
> without difficulty.  I can release all the source code, although
> reproducing the system uses custom hardware so reproducing the problem may
> be tricky.
>
> Thank you,
>
> Iain.
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: ImageJ hangs on adjust Brighness/Contrast

Iain Marcuson-2
^\2018-08-13 10:32:02
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.112-b15 mixed mode):

"ContrastAdjuster" #33 prio=4 os_prio=0 tid=0x00007f900452a800 nid=0x1121
in Object.wait() [0x00007f902037c000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c18e0798> (a ij.plugin.frame.ContrastAdjuster)
at java.lang.Object.wait(Object.java:502)
at ij.plugin.frame.ContrastAdjuster.run(ContrastAdjuster.java:1051)
- locked <0x00000000c18e0798> (a ij.plugin.frame.ContrastAdjuster)
at java.lang.Thread.run(Thread.java:745)

"com.cosylab.epics.caj.util.Timer" #27 prio=5 os_prio=0
tid=0x00007f903c15c800 nid=0x110c in Object.wait() [0x00007f902067d000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c6dbf890> (a com.cosylab.epics.caj.util.Timer)
at com.cosylab.epics.caj.util.Timer.nextTask(Timer.java:237)
- locked <0x00000000c6dbf890> (a com.cosylab.epics.caj.util.Timer)
at com.cosylab.epics.caj.util.Timer$RunLoop.run(Timer.java:273)
at java.lang.Thread.run(Thread.java:745)

"pool-1-thread-5" #26 prio=5 os_prio=0 tid=0x00007f903c134800 nid=0x110b
waiting on condition [0x00007f902079e000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x00000000c6f6f760> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

"pool-1-thread-4" #25 prio=5 os_prio=0 tid=0x00007f903c112800 nid=0x110a
waiting on condition [0x00007f902089f000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x00000000c6f6f760> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

"pool-1-thread-3" #24 prio=5 os_prio=0 tid=0x00007f903c111800 nid=0x1109
runnable [0x00007f90209a0000]
   java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked <0x00000000c7058728> (a sun.nio.ch.Util$3)
- locked <0x00000000c7058710> (a java.util.Collections$UnmodifiableSet)
- locked <0x00000000c6e33db0> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:101)
at
com.cosylab.epics.caj.impl.reactor.Reactor.processInternal(Reactor.java:348)
at com.cosylab.epics.caj.impl.reactor.Reactor.process(Reactor.java:284)
at
com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.run(LeaderFollowersHandler.java:91)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

"pool-1-thread-2" #23 prio=5 os_prio=0 tid=0x00007f903c10f000 nid=0x1108
waiting on condition [0x00007f9020aa1000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x00000000c6f6f760> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

"pool-1-thread-1" #22 prio=5 os_prio=0 tid=0x00007f903c10e800 nid=0x1107
waiting on condition [0x00007f9020ba2000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x00000000c6f6f760> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

"TimerQueue" #20 daemon prio=5 os_prio=0 tid=0x00007f900437c000 nid=0x1106
waiting on condition [0x00007f9020ee5000]
   java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x00000000c7059940> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
at java.util.concurrent.DelayQueue.take(DelayQueue.java:223)
at javax.swing.TimerQueue.run(TimerQueue.java:174)
at java.lang.Thread.run(Thread.java:745)

"DestroyJavaVM" #19 prio=5 os_prio=0 tid=0x0000000001399800 nid=0x10f1
waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Run$_StartupRunner" #18 prio=5 os_prio=0 tid=0x00000000017a2000 nid=0x1105
in Object.wait() [0x00007f90211e6000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at EPICS_AD_Viewer.run(EPICS_AD_Viewer.java:161)
- locked <0x00000000c6ebe790> (a EPICS_AD_Viewer)
at ij.IJ.runUserPlugIn(IJ.java:228)
at ij.IJ.runUserPlugIn(IJ.java:241)
at ij.IJ.runPlugIn(IJ.java:192)
at ij.Executer.runCommand(Executer.java:137)
at ij.Executer.run(Executer.java:66)
at ij.IJ.run(IJ.java:308)
at ij.IJ.run(IJ.java:283)
at ij.macro.Functions.doRun(Functions.java:615)
at ij.macro.Functions.doFunction(Functions.java:96)
at ij.macro.Interpreter.doStatement(Interpreter.java:249)
at ij.macro.Interpreter.doBlock(Interpreter.java:635)
at ij.macro.Interpreter.runMacro(Interpreter.java:158)
at ij.macro.MacroRunner.run(MacroRunner.java:152)
at ij.macro.MacroRunner.run(MacroRunner.java:125)
at ij.plugin.MacroInstaller.autoRun(MacroInstaller.java:527)
at ij.macro.StartupRunner.run(StartupRunner.java:25)
at java.lang.Thread.run(Thread.java:745)

"AWT-EventQueue-0" #16 prio=6 os_prio=0 tid=0x000000000175b000 nid=0x1104
runnable [0x00007f9021ba3000]
   java.lang.Thread.State: RUNNABLE
at sun.java2d.xr.XRDrawLine.clipCoordinates(XRDrawLine.java:320)
at sun.java2d.xr.XRDrawLine.rasterizeLine(XRDrawLine.java:71)
at sun.java2d.xr.XRRenderer.drawLine(XRRenderer.java:94)
at sun.java2d.SunGraphics2D.drawLine(SunGraphics2D.java:2234)
at ij.plugin.frame.ContrastPlot.paint(ContrastAdjuster.java:1278)
at sun.awt.RepaintArea.paintComponent(RepaintArea.java:264)
at sun.awt.X11.XRepaintArea.paintComponent(XRepaintArea.java:64)
at sun.awt.RepaintArea.paint(RepaintArea.java:240)
at sun.awt.X11.XComponentPeer.handleEvent(XComponentPeer.java:584)
at java.awt.Component.dispatchEventImpl(Component.java:4965)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
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:80)
at
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
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)

"AWT-Shutdown" #17 prio=5 os_prio=0 tid=0x000000000175a000 nid=0x1103 in
Object.wait() [0x00007f9021ca6000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c6ce80d0> (a java.lang.Object)
at java.lang.Object.wait(Object.java:502)
at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:295)
- locked <0x00000000c6ce80d0> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:745)

"AWT-XAWT" #15 daemon prio=6 os_prio=0 tid=0x0000000001692000 nid=0x1102
waiting on condition [0x00007f9021fa6000]
   java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for  <0x00000000c6d2a3e0> (a
java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
at
java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
at sun.awt.SunToolkit.awtLock(SunToolkit.java:253)
at sun.awt.X11.XToolkit.waitForEvents(Native Method)
at sun.awt.X11.XToolkit.run(XToolkit.java:568)
at sun.awt.X11.XToolkit.run(XToolkit.java:532)
at java.lang.Thread.run(Thread.java:745)

"Java2D Disposer" #13 daemon prio=10 os_prio=0 tid=0x000000000167d800
nid=0x1101 in Object.wait() [0x00007f90220a8000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c6da96a0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
- locked <0x00000000c6da96a0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
at sun.java2d.Disposer.run(Disposer.java:148)
at java.lang.Thread.run(Thread.java:745)

"GC Daemon" #12 daemon prio=2 os_prio=0 tid=0x0000000001630000 nid=0x1100
in Object.wait() [0x00007f9022638000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c6c85a48> (a sun.misc.GC$LatencyLock)
at sun.misc.GC$Daemon.run(GC.java:117)
- locked <0x00000000c6c85a48> (a sun.misc.GC$LatencyLock)

"RMI Reaper" #11 prio=5 os_prio=0 tid=0x000000000162a800 nid=0x10ff in
Object.wait() [0x00007f9022739000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c6c82068> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
- locked <0x00000000c6c82068> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
at sun.rmi.transport.ObjectTable$Reaper.run(ObjectTable.java:351)
at java.lang.Thread.run(Thread.java:745)

"RMI TCP Accept-0" #10 daemon prio=5 os_prio=0 tid=0x0000000001629000
nid=0x10fe runnable [0x00007f902283a000]
   java.lang.Thread.State: RUNNABLE
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)
at java.net.ServerSocket.implAccept(ServerSocket.java:545)
at java.net.ServerSocket.accept(ServerSocket.java:513)
at
sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:400)
at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:372)
at java.lang.Thread.run(Thread.java:745)

"Service Thread" #8 daemon prio=9 os_prio=0 tid=0x00000000014c0800
nid=0x10fc runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread1" #7 daemon prio=9 os_prio=0 tid=0x0000000001470800
nid=0x10fb waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #6 daemon prio=9 os_prio=0 tid=0x000000000146e800
nid=0x10fa waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" #5 daemon prio=9 os_prio=0 tid=0x000000000146c800
nid=0x10f9 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Surrogate Locker Thread (Concurrent GC)" #4 daemon prio=9 os_prio=0
tid=0x000000000146b000 nid=0x10f8 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x0000000001438800 nid=0x10f7 in
Object.wait() [0x00007f9028318000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c6b37fe0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
- locked <0x00000000c6b37fe0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x0000000001434000
nid=0x10f6 in Object.wait() [0x00007f9028419000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c6b36588> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:502)
at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
- locked <0x00000000c6b36588> (a java.lang.ref.Reference$Lock)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

"VM Thread" os_prio=0 tid=0x000000000142c800 nid=0x10f5 runnable

"Gang worker#0 (Parallel GC Threads)" os_prio=0 tid=0x0000000001374800
nid=0x10f3 runnable

"Concurrent Mark-Sweep GC Thread" os_prio=0 tid=0x00000000013b7800
nid=0x10f4 runnable

"VM Periodic Task Thread" os_prio=0 tid=0x00000000014c3800 nid=0x10fd
waiting on condition

JNI global references: 495

Heap
 par new generation   total 19136K, used 2838K [0x00000000c1800000,
0x00000000c2cc0000, 0x00000000c6b30000)
  eden space 17024K,   7% used [0x00000000c1800000, 0x00000000c1943be0,
0x00000000c28a0000)
  from space 2112K,  73% used [0x00000000c28a0000, 0x00000000c2a21cb8,
0x00000000c2ab0000)
  to   space 2112K,   0% used [0x00000000c2ab0000, 0x00000000c2ab0000,
0x00000000c2cc0000)
 concurrent mark-sweep generation total 131500K, used 78899K
[0x00000000c6b30000, 0x00000000ceb9b000, 0x0000000100000000)
 Metaspace       used 19763K, capacity 20100K, committed 20352K, reserved
1067008K
  class space    used 2216K, capacity 2326K, committed 2432K, reserved
1048576K



On Mon, Aug 13, 2018 at 12:31 PM, Curtis Rueden <
[hidden email]> wrote:

> Hi Iain,
>
> You could try generating a thread dump to find out what's causing the hang.
> See:
>
> https://imagej.net/Troubleshooting#If_ImageJ_freezes_or_hangs
>
> Regards,
> Curtis
>
> --
> Curtis Rueden
> LOCI software architect - https://loci.wisc.edu/software
> ImageJ2 lead, Fiji maintainer - https://imagej.net/User:Rueden
>
>
> On Mon, Aug 13, 2018 at 10:31 AM, Iain Marcuson <[hidden email]>
> wrote:
>
> > I am running ImageJ 1.52e.  I am using a modified version of the EPICS AD
> > Viewer plugin and some plugins developed in-house, notably one for image
> > assembly.  Running the image assembly plugin when it is standalone works.
> > However, if I acquire an image with the AD Viewer plugin, then assemble
> > that image, ImageJ hangs on open Brightness/Contrast, and it has to use
> > kill -9 to stop ImageJ.  I can run other plugins with the AD Viewer
> plugin
> > without difficulty.  I can release all the source code, although
> > reproducing the system uses custom hardware so reproducing the problem
> may
> > be tricky.
> >
> > Thank you,
> >
> > Iain.
> >
> > --
> > ImageJ mailing list: http://imagej.nih.gov/ij/list.html
> >
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: ImageJ hangs on adjust Brighness/Contrast

Iain Marcuson-2
 I have done some further testing.  I can reproduce the error with the EPICS
plugin, so the problem does not lie there.  I have put debugging prints in
much of the ContrastAdjuster code, and the seem to indicate the code
completes.  I can provide data and source code that demonstrates the
problem, if needed.

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html