NBLAST EM tracing against FlyCircuit (or other databases of) neurons

  db = NULL,
  conn = NULL,
  mirror = TRUE,
  normalised = TRUE,
  reverse = FALSE,
  reference = nat.flybrains::FCWB,
  prune_twigs = 2,
  .parallel = TRUE,



catmaid skeleton ids (see catmaid_skids) or a neuronlist


A neuronlist object containing neurons to search. Defaults to the value of options('nat.default.neuronlist').


a catmaid connection object (see catmaid_connection)


whether to mirror the neuron (default TRUE since FlyCircuit neurons are on fly's left and most FAFB tracings are on fly's right.)


Whether to return normalised NBLAST scores


Treat the FAFB skeleton as NBLAST target rather than query (sensible if db contains partial skeletons/tracts; default FALSE).


The reference brain to which the neurons will be transformed, either a templatebrain object such as FCWB or a character vector naming such an object.


Twigs smaller than this value will be removed before creating the dotprops object for NBLAST search. The default value of 2 microns is a good compromise for EM neurons. Setting prune_twigs=NA prevents any pruning.


Whether to parallelise the NBLAST search (see details and also nblast for how to use the parallel interface provided by the doMC package.)


Additional parameters passed to nblast


an object of class nblastfafb for which plot3d, summary and hist methods exist.


Still depends on having a neuronlist containing registered neurons (usually from flycircuit.tw). The example code downloads a set of projection neurons. The full data must be requested from Greg Jefferis.

When .parallel=TRUE, nblast_fafb will parallelise the search across multiple cores if possible. You can set an option specifying a default number of cores elmr.nblast.cores. See elmr-package. Otherwise the default will either be roughly half the number of cores as determined by registerDoParallel. If your machine does not have multiple cores (or you do not want to use them), the search will be a bit more efficient if you set the option elmr.nblast.cores=1 or the argument .parallel=TRUE.



See also

nblast, registerDoParallel for setting spreading load across cores.


if (FALSE) { # first load neuronlist object containing registered neurons (see details) allpndps=flycircuit::load_si_data('allpndps.rds') # ... and set that as the default for queries and plotting options(nat.default.neuronlist='allpndps') # then make sure you are loged in to CATMAID server # catmaid::catmaid_login(<your connection args>) # NBLAST neuron 27884 PN27884f=nblast_fafb(27884, mirror = FALSE, .parallel=FALSE) # set up parallel backend (will be used by default) doMC::registerDoMC() PN27884f=nblast_fafb(27884, mirror = FALSE) # summary table of results summary(PN27884f) # plot results, just top hit plot3d(PN27884f, hits=1) # aggressive pruning of twigs nblast_fafb(27884, mirror = FALSE, prune_twigs=5) # no pruning of twigs nblast_fafb(27884, mirror = FALSE, prune_twigs=NA) # alternatively, you can supply an existing neuronlist dc_nl = nblast_fafb(dense_core_neurons, mirror=TRUE) summary(dc_nl) }