deepimagej / deepimagej/deepimagej-plugin

not working on large 2D images

Open
#57 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
98
Forks
13
PR merge metrics
No merged PRs in 30d

Description

Hi
I tried running a model on a large 2D image (4856 x 3672), and I got this error:

Model loading: 0
Engines loading: 0
Set size: 0
Title panel: 21
Search bar: 11
Content panel: 18
Footer: 1
done
[SERVICE-0] {"task":"38b52de7-6e96-4a94-9352-f07c3d66784a","requestType":"EXECUTE","inputs":{"modelFolder":".Fiji.app\\models\\2D_enteric_neuron.bioimage.io.model"},"script":"loadModel"}
[SERVICE-0] {"responseType":"LAUNCH","task":"38b52de7-6e96-4a94-9352-f07c3d66784a"}
[WORKER-0] 2025-02-24 02:07:13.438356: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_100.dll'; dlerror: cudart64_100.dll not found
[WORKER-0] 2025-02-24 02:07:13.438384: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
[WORKER-0] 2025-02-24 02:07:13.481728: I tensorflow/cc/saved_model/reader.cc:31] Reading SavedModel from: C:\Users\Pradeep\Desktop\Fiji.app\models\2D_enteric_neuron.bioimage.io.model
[WORKER-0] 2025-02-24 02:07:13.503051: I tensorflow/cc/saved_model/reader.cc:54] Reading meta graph with tags { serve }
[WORKER-0] 2025-02-24 02:07:13.541302: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
[WORKER-0] 2025-02-24 02:07:13.545032: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library nvcuda.dll
[WORKER-0] 2025-02-24 02:07:13.563714: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties: 
[WORKER-0] name: NVIDIA GeForce RTX 3080 major: 8 minor: 6 memoryClockRate(GHz): 1.755
[WORKER-0] pciBusID: 0000:2d:00.0
[WORKER-0] 2025-02-24 02:07:13.564463: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_100.dll'; dlerror: cudart64_100.dll not found
[WORKER-0] 2025-02-24 02:07:13.565004: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cublas64_100.dll'; dlerror: cublas64_100.dll not found
[WORKER-0] 2025-02-24 02:07:13.565512: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cufft64_100.dll'; dlerror: cufft64_100.dll not found
[WORKER-0] 2025-02-24 02:07:13.566010: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'curand64_100.dll'; dlerror: curand64_100.dll not found
[WORKER-0] 2025-02-24 02:07:13.566501: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cusolver64_100.dll'; dlerror: cusolver64_100.dll not found
[WORKER-0] 2025-02-24 02:07:13.566979: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cusparse64_100.dll'; dlerror: cusparse64_100.dll not found
[WORKER-0] 2025-02-24 02:07:13.567477: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudnn64_7.dll'; dlerror: cudnn64_7.dll not found
[WORKER-0] 2025-02-24 02:07:13.567487: W tensorflow/core/common_runtime/gpu/gpu_device.cc:1641] Cannot dlopen some GPU libraries. Please make sure the missing libraries mentioned above are installed properly if you would like to use GPU. Follow the guide at https://www.tensorflow.org/install/gpu for how to download and setup the required libraries for your platform.
[WORKER-0] Skipping registering GPU devices...
[WORKER-0] 2025-02-24 02:07:13.679874: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1159] Device interconnect StreamExecutor with strength 1 edge matrix:
[WORKER-0] 2025-02-24 02:07:13.679892: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1165]      0 
[WORKER-0] 2025-02-24 02:07:13.679896: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1178] 0:   N 
[WORKER-0] 2025-02-24 02:07:13.798778: I tensorflow/cc/saved_model/loader.cc:202] Restoring SavedModel bundle.
[WORKER-0] 2025-02-24 02:07:14.124703: I tensorflow/cc/saved_model/loader.cc:311] SavedModel load for tags { serve }; Status: success. Took 642971 microseconds.
[SERVICE-0] {"responseType":"COMPLETION","task":"38b52de7-6e96-4a94-9352-f07c3d66784a"}
java.lang.NullPointerException
	at io.bioimage.modelrunner.bioimageio.tiling.TileCalculator.calculateByteSizeOfAffectedOutput(TileCalculator.java:254)
	at io.bioimage.modelrunner.bioimageio.tiling.TileCalculator.checkOutputSize(TileCalculator.java:178)
	at io.bioimage.modelrunner.bioimageio.tiling.TileCalculator.getOptimalTileSize(TileCalculator.java:124)
	at io.bioimage.modelrunner.model.BioimageIoModel.run(BioimageIoModel.java:329)
	at deepimagej.Runner.run(Runner.java:138)
	at deepimagej.gui.Gui.lambda$runModel$16(Gui.java:273)
	at java.lang.Thread.run(Thread.java:750)

It seems to run fine on smaller images.

Cheers
Pradeep

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure with the reported 4856 x 3672 image, then start at TileCalculator.java:254 and follow the calls from checkOutputSize and getOptimalTileSize. Check how BioimageIoModel.run reaches the tiling code. Done means large 2D images no longer fail with the reported NullPointerException.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, tensorflow
Domain
machine-learning
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.