vanvalenlab / deepcell-tf

Deep Learning Library for Single Cell Analysis
https://deepcell.readthedocs.io
Other
427 stars 99 forks source link

Add SpotNet v1.1 #706

Closed elaubsch closed 5 months ago

elaubsch commented 10 months ago

This PR adds SpotNet version 1.1, which adds Airlocalize to the set of spot detection methods used to create consensus annotations.

msschwartz21 commented 5 months ago

@rossbar I was getting ready to open a PR with a tracking related change and found this old PR which I was going to merge in first. Of course now the actions are failing... Would you mind taking a look?

rossbar commented 5 months ago

Would you mind taking a look?

No problem - the root causes were twofold: 1) Dependency sync issues with the docs deps (specifically nbsphinx) - this will only get worse as we're pinned further and further from "current" (i.e. Python 3.12) 2) Updates to ruff, specifically the addition of checks to always use f-strings. I've ignored these checks for now[^1] which should generally be unobjectionable, though if anyone feels strongly about how string formatting is done by all means feel free to modify!

[^1]: this actually led down an interesting rabbit hole with behavior I was unaware of. It seems like there's a difference in whether generator expressions are evaluated with % formatting vs. f-/.format(!). See codeblock above :)

   >>> layer_names = ['conv_pw_{}_relu'.format(i for i in block_ids)]  # Doesn't evaluate expression
   ['conv_pw_<generator object <genexpr> at 0x7c532706f680>_relu']
   >>> layer_names = ['conv_pw_%s_relu' % i for i in block_ids]
   ['conv_pw_0_relu', 'conv_pw_1_relu', 'conv_pw_2_relu']
rossbar commented 5 months ago

I rebased on master to pull in the changes from #719 and all is green, so I'll go ahead and get this in as well. Thanks for looking at it @msschwartz21 !