1 / 13

Atlas Interoperability Session

Atlas Interoperability Session. Ilya Zaslavsky, Willy Wong + Bill Bug + Heng Yuan. Why atlas integration. Multiple atlases exist, to present different kinds of data, and offer different analysis and visualization functions

oral
Download Presentation

Atlas Interoperability Session

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Atlas Interoperability Session Ilya Zaslavsky, Willy Wong + Bill Bug + Heng Yuan

  2. Why atlas integration • Multiple atlases exist, to present different kinds of data, and offer different analysis and visualization functions • Atlas authors are best to decide what presentation and functionality are most appropriate for their data • Atlas authors tend to like their atlases more than other atlases • which creates a set of contradictory requirements… • Needs: • Ability to search, query, retrieve different images, volumes, and segmentations, from any atlas of choice • Ability to easily switch between atlases

  3. Interoperability desiderata Gensat Allen Brain Atlas CCDB, others Spatial registry MBAT Drexel’s NT UCLA’s Shiva Smart Atlas

  4. Mechanisms of integration • Directly: • By space, using Stereotaxic coordinates • Formal coordinate system definitions • Coordinate system translation services (incl. between image and stareotaxic) • Spatial registration of images and segmentations • By anatomic feature names, via UMLS + Bonfire + Neuronames + BIRNLex… • Ontological registration • Semantic translation services • Indirectly • By verbal description of spatial locations relative to well-defined features (rules) • In relative coordinates; by matching derived indices: histograms, shape indexes, etc.

  5. Mechanisms of integration: 2 • Integration across atlas clients • Specification of state of atlas client • API for initializing exchange service and submitting and retrieving states NT Shiva MBAT WOMBAT Init() Servlet Or Web Service Smart Atlas Open SmartAtlas using returned URL New service id & URL Submit() Retrieve() Confirmation Result wrapped in XML Retrieve() Submit() Result wrapped in XML Confirmation Service ended automatically when application is closed End_service() Confirmation

  6. The current implementation

  7. The message exchange WS • http://132.239.132.181:8080/axis/InterAtlasServer.jws?wsdl • InitState • Submit_Ontology_Terms • Submit_stereotaxic_2D_pointlist • Submit_stereotaxic_3D_pointlist • Retrieve_Ontology_Terms • Retrieve_Stereotaxic_2D_Pointlist • Retrieve_Stereotaxic_3D_Pointlist • Clear_Ontology_Terms • Clear_Stereotaxic_All_Pointlist • Logout

  8. Agreed-upon ROI description and state exchange protocol STATE_RETRIEVE  <atlas_state> <request name="retrieve">  <sessionID>10009</sessionID>  <targetatlas>shiva</targetatlas>  <targetterm ontology="UMLS|..."/>  <targetlocation coordsys="Stereotaxic" format="pointlist3D"/> </request></atlas_state> <atlas_state > <response name="retrieve"> <submitting_atlas>smart</submitting_atlas> <action name="highlight"> <locations> <location coordsys="Stereotaxic">  <format type="pointlist3D">   <ROI>    <bbox>m1,n1,p1 m2,n2,p2</bbox>    <data>x1,y1,z1 x2,y2,z2 ...</data>   </ROI>   </ROI>   <ROI>    <bbox>m1,n1,p1 m2,n2,p2</bbox>    <data>x1,y1,z1 x2,y2,z2 ...</data>   </ROI>  </format> </location> </locations> </action> </response></atlas_state> STATE_SUBMIT  <atlas_state> <request name="submit">    <sessionID>10009</sessionID>    <submitting_atlas>smart</submitting_atlas>     <action name="highlight|...">       <locations>          <location coordsys="Stereotaxic">              <format type="pointlist3D">                     <ROI>                             <bbox>m1,n1,p1 m2,n2,p2</bbox>                             <data>x1,y1,z1 x2,y2,z2 ...</data>                     </ROI>                     <ROI>                              <bbox>m1,n1,p1 m2,n2,p2</bbox>                              <data>x1,y1,z1 x2,y2,z2 ...</data>                     </ROI>              </format>           </location>       </locations>     </action>   </request></atlas_state> <atlas_state> <response name="submit">      <status>success</status> </response></atlas_state>  STATE_INIT:: <atlas_state> <request name= "initialize_session">     <user>user</user>     <pwd>pwd</pwd>  </request></atlas_state> <atlas_state> <response name= "initialize_session">    <sessionID>10009 </sessionID>  </response></atlas_state> + Java API

  9. State Exchange between NT & SA • We have a set of JAVA APIs for the external programmers to specify a Paxinos Plate (via Stereotaxic coordinates). • We are still in the process of integrating NT/SA with the existing Interoperability Webservice APIs (2D exchange, tuning NT knife to available Paxinos for NT ->SA; the SA ->NT direction is straightforward)

  10. State Exchange between SA-MBAT Atlas alignment problems… Transformation matrix wrapped in Coordinate Transformation Service

  11. Exchanging atlas state in a format-independent manner • Several formats for state: • pointlist3D, plane_pointlist2D, canonical_sagittal; plane_filling_pixels, plane_quadrtree, plane_bounding_pixels; filling_voxels, octtree, surface_bounding_voxels • Ontology-based + verbal state descriptions (?) • Coordinate transformation services • http://132.239.132.181:8080/axis/MouseCoordinate.jws?wsdl (Shiva to SmartAtals)

  12. Universal description of location?? • Should work across scales and coordinate systems, (eventually across species, development stages?) • Location description: • By geometries (in common coordinates: there are three of them at least) • By feature names (in shared ontology) – Neuronames most likely • By relationships (in common mereotopology terms): need engines for “packing” and “unpacking” collections of mereotopological rules describing relative location of ROI w.r.t. common features • NEED TRANSLATIONS BETWEEN THE THREE

  13. Atlas Interop API: thoughts • MGI (they don’t do atlasing) and other collaborators • Semantic web community interested in integration with spatial semantics • UCSC site with more image data (VISIGENE) • 6-month application timeframe • MRI +Protein localization +microarray, within a project; 2 other projects • Parkinsonian dataset as a use case - linkages to human • Connectivity - USC, Hong Wei, COCOMAC • Visualization integration – 2D into 3D • Building (not) a Prius rather than two cars • Making canonical anatomical presentations accessible • 2D exchange definitely a short-term focus, but keep wider spectrum in mind • Formal specifications of coordinate systems and describing existing datasets in these terms • Develop more transformation routines, for the defined coord systems • Pull more Gensat data into the atlasing environment? (start with data that we already have) • Use cases for when you switch from one integration mdoe (bring data into your current interface) to inter-atlas API

More Related