Surface model of the Insect Brain Name Working Group neuropil segmentation in JFRC2 coordinate space

Details

Note that the supplementary information for the Insect Brain Name working group only includes neuropil information in the IBN space, which can be downloaded from ftp://flybase.org/flybase/associated_files/InsectBrainNomenclature_RawData.zip.

However Arnim Jenett, Kazunori Shinomiya and Kei Ito generated a full brain segmentation based on the JFRC2 template (used by the Virtual Fly Brain project and internally at Janelia Farm for several years.)

This surface model was generated in Amira from the segmentation in the file JFRCtempate2010.mask130819.am with md5 d0a40b38d1a0045a423d947ebf1778d2. The data are available in a github repository https://github.com/VirtualFlyBrain/DrosAdultBRAINdomains. The original full size model was then simplified to reduce the number of vertices resulting

References

Kei Ito, Kazunori Shinomiya, Masayoshi Ito, J. Douglas Armstrong, George Boyan, Volker Hartenstein, Steffen Harzsch, Martin Heisenberg, Uwe Homberg, Arnim Jenett, Haig Keshishian, Linda L. Restifo, Wolfgang Rössler, Julie H. Simpson, Nicholas J. Strausfeld, Roland Strauss, Leslie B. Vosshall, Insect Brain Name Working Group (2013). A systematic nomenclature for the insect brain. Neuron 81 (4), 755-765. doi:10.1016/j.neuron.2013.12.017

See also

Examples

# list the materials for the different surface regions
materials(JFRC2NP.surf)
#>              name id     col
#> AME_R       AME_R  1 #3C29CC
#> LO_R         LO_R  2 #29CC99
#> NO             NO  3 #47CC29
#> BU_R         BU_R  4 #2960CC
#> PB             PB  5 #CC8229
#> LH_R         LH_R  6 #CC2855
#> LAL_R       LAL_R  7 #CC6C28
#> SAD           SAD  8 #9CCC27
#> CAN_R       CAN_R  9 #EBBD79
#> AMMC_R     AMMC_R 10 #47CC29
#> ICL_R       ICL_R 11 #CCA229
#> VES_R       VES_R 12 #FF7E7E
#> IB_R         IB_R 13 #B529CC
#> ATL_R       ATL_R 14 #7E7EFF
#> CRE_R       CRE_R 15 #79EB93
#> MB_PED_R MB_PED_R 16 #CC69C0
#> MB_VL_R   MB_VL_R 17 #29CCB4
#> MB_ML_R   MB_ML_R 18 #A529CC
#> FLA_R       FLA_R 19 #282DCC
#> LOP_R       LOP_R 20 #7E7EFF
#> EB             EB 21 #29CC6C
#> AL_R         AL_R 22 #FF23DA
#> ME_R         ME_R 23 #DC1717
#> FB             FB 24 #A429CC
#> SLP_R       SLP_R 25 #8BCC29
#> SIP_R       SIP_R 26 #28CC4D
#> SMP_R       SMP_R 27 #2987CC
#> AVLP_R     AVLP_R 28 #27CCCC
#> PVLP_R     PVLP_R 29 #6728CC
#> WED_R       WED_R 30 #CC2763
#> PLP_R       PLP_R 31 #00A48D
#> AOTU_R     AOTU_R 32 #28CC60
#> GOR_R       GOR_R 33 #CC2859
#> MB_CA_R   MB_CA_R 34 #5E5ECC
#> SPS_R       SPS_R 35 #EB9FD7
#> IPS_R       IPS_R 36 #6565F7
#> SCL_R       SCL_R 37 #C927CC
#> EPA_R       EPA_R 38 #29CC3F
#> GNG           GNG 39 #CC28A7
#> PRW           PRW 40 #29CC85
#> GA_R         GA_R 41 #141766
#> AME_L       AME_L 42 #3B28CC
#> LO_L         LO_L 43 #28CC99
#> BU_L         BU_L 44 #2860CC
#> LH_L         LH_L 45 #CC2855
#> LAL_L       LAL_L 46 #CC6C28
#> CAN_L       CAN_L 47 #EBBD79
#> AMMC_L     AMMC_L 48 #46CC28
#> ICL_L       ICL_L 49 #CCA228
#> VES_L       VES_L 50 #FF7E7E
#> IB_L         IB_L 51 #B528CC
#> ATL_L       ATL_L 52 #7E7EFF
#> CRE_L       CRE_L 53 #79EB93
#> MB_PED_L MB_PED_L 54 #CC69BF
#> MB_VL_L   MB_VL_L 55 #28CCB4
#> MB_ML_L   MB_ML_L 56 #A528CC
#> FLA_L       FLA_L 57 #282DCC
#> LOP_L       LOP_L 58 #0100FF
#> AL_L         AL_L 59 #FF23D9
#> ME_L         ME_L 60 #DB1717
#> SLP_L       SLP_L 61 #8BCC28
#> SIP_L       SIP_L 62 #28CC4D
#> SMP_L       SMP_L 63 #2887CC
#> AVLP_L     AVLP_L 64 #26CCCC
#> PVLP_L     PVLP_L 65 #6728CC
#> WED_L       WED_L 66 #CC2663
#> PLP_L       PLP_L 67 #00A38D
#> AOTU_L     AOTU_L 68 #28CC5F
#> GOR_L       GOR_L 69 #CC2828
#> MB_CA_L   MB_CA_L 70 #5D5ECC
#> SPS_L       SPS_L 71 #EB9ED7
#> IPS_L       IPS_L 72 #6464F7
#> SCL_L       SCL_L 73 #C926CC
#> EPA_L       EPA_L 74 #28CC3E
#> GA_L         GA_L 75 #141666

if (FALSE) {
# plot the surface
plot3d(JFRC2NP.surf)

# calculate volumes ond surface areas for all regions
if(require("RvtkStatismo") && require("tidyr") && require("ggplot2") && require("stringr")){
  # convert each region to a mesh3d object, note that we use simplify=FALSE
  # to stop sapply mangling the result
  meshes=sapply(JFRC2NP.surf$RegionList,
    function(r) as.mesh3d(subset(JFRC2NP.surf, r)), simplify=FALSE)

  # now calculate information for each mesh
  # NB vtkMeshInfo returns a list so we need to convert to a vector
  # to end up with a nice matrix output
  vs=sapply(meshes, function(x) unlist(vtkMeshInfo(x)))

  # now make that into a tidy data.frame and plot
  df=data.frame(key=colnames(vs), t(vs),
                region=sub("_[LR]", "", colnames(vs)),
                side=str_match(colnames(vs), "_([LR])")[,2])

  df2=gather(df, measure, value, volume:surfaceArea)
  library(ggplot2)
  qplot( value, region, data=df2, col=side, facets = . ~ measure) + scale_x_log10()

}

}