Tag Archives: Healthcare

Accelerate AI development for Digital Pathology using EZ WSI DICOMWeb Python library

Overview

Digital pathology is changing the way pathology is practiced by making it easier to share images, collaborate with colleagues, and develop new AI algorithms that can improve the quality and cost of medical care. One of the biggest challenges of digital pathology is storing and managing the large volume of data generated. The Google Cloud Healthcare API provides a solution for this with a managed DICOM store, which is a secure, scalable, and performant way to store digital pathology images in a manner that is both standardized and interoperable.

However, performing image retrieval of specific patches (i.e. regions of interest) of a whole slide image (WSI) from the managed DICOM store using DICOMweb can be complex and requires DICOM format expertise. To address this, we are open sourcing EZ WSI (Whole Slide Image) DICOMWeb, a Python library that makes fetching these patches both efficient and easy-to-use.

How EZ WSI DICOMWeb works

EZ WSI DICOMweb facilitates the retrieval of arbitrary and sequential patches of a DICOM WSI from a DICOMWeb compliant Google Cloud Healthcare API DICOM store. Unlike downloading the entire DICOM series WSI and extracting patches locally from that file, which can increase network traffic, latency and storage space usage, EZ WSI DICOMweb retrieves only the necessary tiles for the desired patch directly through the DICOMweb APIs. This is simpler to use and abstracts away the following:

  • The need to fetch many tiles, which requires an understanding of DICOM data structure (e.g. offset & data hierarchy).
  • The need for a detailed understanding of the DICOMWeb APIs, REST payloads, and authentication, as well as addressing the possibility of redundant requests if several patches are fetched and there are overlapping tiles.
  • The need to decode images on the server if client side decoding is not supported, which increases the time it takes to transfer data and the size of the data being transferred.

EZ WSI DICOMWeb allows researchers and developers to focus on their ML tasks rather than the intricacies of DICOM. Developers do not need to have an in-depth understanding of DICOM data structuring or the DICOM API. The library provides a simple and intuitive functionality that allows developers to efficiently fetch DICOM images using only the Google Cloud Platform (GCP) Resource Name and DICOM Series path without any pixel recompression.

Case Study: Generating Patches for AI Workflows

A typical pathology WSI could be on the order of 40,000 pixels in length or width. However, an AI model that is trained to assess that WSI may only analyze a patch that is 512 x 512 pixels at a time. The way the model can operate over the entire WSI is by using a sliding windows approach. We demonstrate how that can be done using EZ WSI DICOMWeb.

First, we create a DicomSlide object using the DICOMweb client and interface. This can be done with just a few lines of code.

dicom_web_client = dicom_web.DicomWebClientImpl() dwi = dicom_web_interface.DicomWebInterface(dicom_web_client) ds = dicom_slide.DicomSlide( dwi=dwi, path=gcp_resource_name+dicom_series_path, enable_client_slide_frame_decompression = True ) ds.get_image(desired_magnification) # e.g. '0.625X'

This DicomSlide represents the entire WSI, as illustrated below.

Image of a WSI at the magnitude of 0.625X rendered by matplotlib

The above image leverages EZ WSI’s DicomSlide module to fetch an entire WSI at the requested magnification of 0.625X and uses matplotlib to render it, see the sample code for more details.

By providing coordinates, DicomSlide’s get_patch() method allows us to manually extract just the two sections of tissue at supported magnification with coordinates as pictured below.

tissue_patch = ds.get_patch( desired_magnification, x=x_origin, y=y_origin, width=patch_width, height=patch_ height )
Left tissue sample and right tissue sample at 0.625X magnitude, rendered by matplotlib

We can effectively zoom in on patches programmatically by reducing the window size and increasing the magnification using the same get patch method from above.

image of three panels showing the same interesting patch at 0.625, 2.5X, and 40X magnitude, rendered by matplotlib

Our ultimate goal is to generate a set of patches that can be used in a downstream AI application from this WSI.

image showing patch generation at 10X with 0.625X mask, rendered by matplotlib

To do this, we call PatchGenerator. It works by sliding a window of a specified size with a specified stride size across the image, heuristically ignoring tissue-less regions at a specified magnification level.

patch_gen = patch_generator.PatchGenerator( slide=ds, stride_size=stride_size, # the number of pixels between patches patch_size=patch_size, # the length and width of the patch in pixels magnification=patch_magnification, # magnification to generate patches at max_luminance=0.8, # defaults to .8, heuristic to evaluate where tissue is. tissue_mask_magnification=mask_magnification, )

The result is a list of patches that can be used as input into a machine learning algorithm.

image showing patch generation at 40X with 0.625X mask, rendered by matplotlib

Conclusion

We have built this library to make it easy to directly interact with DICOM WSIs that are stored in Google's DICOMWeb compliant Healthcare API DICOM store and extract image patches for AI workflows. Our hope is that by making this available, we can help accelerate the development of cutting edge AI for digital pathology in Google Cloud and beyond.

Links: Github, GCP-DICOMWeb

By Google HealthAI and Google Cloud Healthcare teams

Broadening our COVID-19 support in India

GiveIndia providing oxygen supplies to a rural hospital in India 


As the pandemic has unfolded in India, it’s been humbling and inspiring to see individuals, communities, institutions, and governments work together to manage the impact of a crisis on a scale we haven’t experienced before. Technology has played a critical role, and our focus at Google has been on making sure people have the information and tools they need to stay informed, connected, and safe.  


We have worked to surface timely and reliable health information, amplify public health campaigns, and help nonprofits get urgent support to Indians in need. In April, through our philanthropic arm Google.org, we announced grants totaling $18 million USD (135 Crore INR) to expand the reach of public health information campaigns and support emergency relief work. 


Today, as India slowly emerges from the crisis of the past few months, we are turning our focus to helping strengthen India’s healthcare infrastructure and workforce -- especially in rural areas.


Building on our overall COVID-19 response, we are announcing new commitments to GiveIndia, PATH, Apollo Medskills and ARMMAN, focused on setting up oxygen generation plants and expanding the health workforce by strengthening COVID-19 management skills among frontline workers. 


Google.org will support procurement and installation of approximately 80 oxygen generation plants in healthcare facilities in high-need and rural locations with new grants totalling approximately $15 million USD (109 Crore INR) to GiveIndia and PATH. The two organizations will work together to oversee the oxygen program, providing project management support — including procurement and installation of plants. PATH will identify the target locations and provide technical assistance for the project, working with state governments and other authorities, and complete the installation of the plants. 


As part of our new commitment, Google is investing in the efforts of Apollo Medskills to help upskill 20,000 frontline health workers through specialized training in COVID-19 management. This will complement and strengthen the stressed rural health workforce and rural health systems. 


To further bolster these efforts, Google.org will provide a $500,000 USD  (3.6 Crore INR ) grant to nonprofit ARMMAN. ARMMAN will run skilling programs for 180,000 Accredited Social Health Activists (ASHAs) and 40,000 Auxiliary Nurse Midwives (ANMs) in 15 Indian states. It will also set up a call center to provide additional help and advice for ASHAs and ANMs where required.


Google is proud to be supporting these organizations as they build a bigger, better-equipped healthcare system, help India steady itself after the pandemic’s second wave and lay the foundations for a sustainable healthcare system over the longer term. 


Posted by Sanjay Gupta, Country Head & Vice President, India


Broadening our COVID-19 support in India

GiveIndia providing oxygen supplies to a rural hospital in India 


As the pandemic has unfolded in India, it’s been humbling and inspiring to see individuals, communities, institutions, and governments work together to manage the impact of a crisis on a scale we haven’t experienced before. Technology has played a critical role, and our focus at Google has been on making sure people have the information and tools they need to stay informed, connected, and safe.  


We have worked to surface timely and reliable health information, amplify public health campaigns, and help nonprofits get urgent support to Indians in need. In April, through our philanthropic arm Google.org, we announced grants totaling $18 million USD (135 Crore INR) to expand the reach of public health information campaigns and support emergency relief work. 


Today, as India slowly emerges from the crisis of the past few months, we are turning our focus to helping strengthen India’s healthcare infrastructure and workforce -- especially in rural areas.


Building on our overall COVID-19 response, we are announcing new commitments to GiveIndia, PATH, Apollo Medskills and ARMMAN, focused on setting up oxygen generation plants and expanding the health workforce by strengthening COVID-19 management skills among frontline workers. 


Google.org will support procurement and installation of approximately 80 oxygen generation plants in healthcare facilities in high-need and rural locations with new grants totalling approximately $15 million USD (109 Crore INR) to GiveIndia and PATH. The two organizations will work together to oversee the oxygen program, providing project management support — including procurement and installation of plants. PATH will identify the target locations and provide technical assistance for the project, working with state governments and other authorities, and complete the installation of the plants. 


As part of our new commitment, Google is investing in the efforts of Apollo Medskills to help upskill 20,000 frontline health workers through specialized training in COVID-19 management. This will complement and strengthen the stressed rural health workforce and rural health systems. 


To further bolster these efforts, Google.org will provide a $500,000 USD  (3.6 Crore INR ) grant to nonprofit ARMMAN. ARMMAN will run skilling programs for 180,000 Accredited Social Health Activists (ASHAs) and 40,000 Auxiliary Nurse Midwives (ANMs) in 15 Indian states. It will also set up a call center to provide additional help and advice for ASHAs and ANMs where required.


Google is proud to be supporting these organizations as they build a bigger, better-equipped healthcare system, help India steady itself after the pandemic’s second wave and lay the foundations for a sustainable healthcare system over the longer term. 


Posted by Sanjay Gupta, Country Head & Vice President, India


Progress from a year of AI for Social Good at Google Research India

Almost a year and a half ago, we announced Google Research India, an AI Lab in Bangalore. Along with advancing fundamental research in AI, we sought  to support nonprofits and universities to solve big challenges in the field of Public Health, Conservation, Agriculture and Education using AI. 

In 2020, we announced AI for Social Good would be supporting six projects from NGOs and Academic collaborations to utilize the application of AI to assist underserved communities that have not traditionally benefited from the prowess of AI. Google provided scientific and technical contributions for each project, as well as  funding from Google Research and Google.org. 

Today, we are pleased to provide an update on some of these projects, and highlight successes and challenges in AI for Social Good. 

Maternal Healthcare

India accounts for 11 percent of global maternal mortality, and a woman in India dies in childbirth every fifteen minutes. However, almost 90 percent of maternal deaths are avoidable if women receive timely intervention. Access to timely, accurate health information is a significant challenge among women in rural areas and urban slums. ARMMAN runs mMitra, a free mobile voice call service that sends timely and targeted preventive care information to expectant and new mothers. Adherence to such public health programs is a big challenge but timely intervention to retain people is beneficial to improve maternal health outcomes. Researchers from Google Research and IIT Madras worked with ARMMAN to design an AI technology that could provide an indication of women who were at risk of dropping out from the health information program. The early targeted identification helps ARMMAN to personalise interventions and retain these people, improving maternal health outcomes. Test results demonstrated that use of AI technology was able to bring down the risk of drop-offs by up to 32% for women at high risk of dropping out. The team is currently working towards scaling this to 300,000+ women in mMitra and we are excited to continue to support ARMMAN as the project team increases the reach of this technology to 1M+ mothers and children in 2021. To support ARMMAN’s growing efforts, Google.org is committing another USD $530,000 to ARMMAN to scale the use of AI for social good to reach underserved women and children. 

The importance of targeted interventions to improve health outcomes cannot be overstated. AI can help play a critical role in its advancement, however the lack of availability of high-quality public health data is a significant challenge. Frequently, data collection is enabled through the labour and expertise of frontline health workers and yet Khushibaby discovered various challenges in the field that inhibited the collection of the high-quality data required. Researchers from Singapore Management University and Google Research collaborated with Khushibaby to develop AI algorithms with over 90 percent accuracy that provided timely predictions about the drop in health workers’ data quality. These timely predictions help Khushibaby provide assistance to the health worker to enable them to record high-quality data. The project team is currently planning to deploy and safely test this technology with 250+ healthcare workers who serve over 15,000 people. 

Wildlife Conservation

India is home to some of the most biodiverse regions, where human settlements and wildlife co-exist in forests. However, interactions between local communities and wildlife can result in conflicts, leading to loss of crops, cattle, and even human life. Wildlife Conservation Trust needed help to proactively predict human-wildlife conflict to enable them to take timely steps to protect local communities, wildlife, and the forest. With technical and scientific contributions from Google Research and Singapore Management University, Wildlife Conservation Trust designed AI models that help predict human-wildlife conflict in Bramhapuri Forest Division in Tadoba, Maharashtra. These novel AI techniques provide over 80 percent accuracy in predicting human-wildlife conflict in the Bramhapuri Forest Division in the test results. This work is currently being field-tested in Chandrapur district, Madhya Pradesh, to ensure safe deployment. 

Local Language Adoption

Six out of ten children globally do not achieve minimum proficiency levels in reading, despite attending school. Lack of access to reading content in one’s local language is a significant challenge in addressing this problem. Storyweaver, an open-licence driven organization, works towards bridging that gap by developing and curating story books in a multitude of local languages to help children learn new concepts, new ideas and open up their imagination.  Storyweaver needed help to enable access to creation tools in low-resource languages. Creation tools in low-resource languages suffer from very low accuracy, adding barriers to content creation. The team at AI4Bharat & IIT Madras, with support from Google, developed state-of-the-art Natural Language Understanding tools to develop open-language models for two low-resource languages (Konkani, Maithal), making story reading easier for 70,000+ children. 

We are humbled to see the progress in the development and deployment of AI technologies for social good in a short period of time. We are confident in our development and support of a collaborative model that involves experts from Academia and NGOs, as well as contributions from Google, to advance AI for social good. Continuing our scientific, technical, and financial support of organizations working in this space, we are excited to announce an expanded follow-up program to initiate collaborative AI for Social Good projects in Asia Pacific and Sub-Saharan Africa. 

We recognize that AI is not a magic wand to solve all the world’s challenges, it is however a powerful tool to help experts and social-impact organisations to explore and address hard, unanswered questions. 

Posted by Milind Tambe, Director of AI for Social Good, Google Research India, and Manish Gupta, Director, Google Research India


Releasing the Healthcare Text Annotation Guidelines

The Healthcare Text Annotation Guidelines are blueprints for capturing a structured representation of the medical knowledge stored in digital text. In order to automatically map the textual insights to structured knowledge, the annotations generated using these guidelines are fed into a machine learning algorithm that learns to systematically extract the medical knowledge in the text. We’re pleased to release to the public the Healthcare Text Annotation Guidelines as a standard.

Google Cloud recently launched AutoML Entity Extraction for Healthcare, a low-code tool used to build information extraction models for healthcare applications. There remains a significant execution roadblock on AutoML DIY initiatives caused by the complexity of translating the human cognitive process into machine-readable instructions. Today, this translation occurs thanks to human annotators who annotate text for relevant insights. Yet, training human annotators is a complex endeavor which requires knowledge across fields like linguistics and neuroscience, as well as a good understanding of the business domain. With AutoML, Google wanted to democratize who can build AI. The Healthcare Text Annotation Guidelines are a starting point for annotation projects deployed for healthcare applications.

The guidelines provide a reference for training annotators in addition to explicit blueprints for several healthcare annotation tasks. The annotation guidelines cover the following:
  • The task of medical entity extraction with examples from medical entity types like medications, procedures, and body vitals.
  • Additional tasks with defined examples, such as entity relation annotation and entity attribute annotation. For instance, the guidelines specify how to relate a medical procedure entity to the source medical condition entity, or how to capture the attributes of a medication entity like dosage, frequency, and route of administration.
  • Guidance for annotating an entity’s contextual information like temporal assessment (e.g., current, family history, clinical history), certainty assessment (e.g., unlikely, somewhat likely, likely), and subject (e.g., patient, family member, other).
Google consulted with industry experts and academic institutions in the process of assembling the Healthcare Text Annotation Guidelines. We took inspiration from other open source and research projects like i2b2 and added context to the guidelines to support information extraction needs for industry-applications like Healthcare Effectiveness Data and Information Set (HEDIS) quality reporting. The data types contained in the Healthcare Text Annotation Guidelines are a common denominator across information extraction applications. Each industry application can have additional information extraction needs that are not captured in the current version of the guidelines. We chose to open source this asset so the community can tailor this project to their needs.

We’re thrilled to open source this project. We hope the community will contribute to the refinement and expansion of the Healthcare Text Annotation Guidelines, so they mirror the ever-evolving nature of healthcare.

By Andreea Bodnari, Product Manager and Mikhail Begun, Program Manager—Google Cloud AI

Releasing the Healthcare Text Annotation Guidelines

The Healthcare Text Annotation Guidelines are blueprints for capturing a structured representation of the medical knowledge stored in digital text. In order to automatically map the textual insights to structured knowledge, the annotations generated using these guidelines are fed into a machine learning algorithm that learns to systematically extract the medical knowledge in the text. We’re pleased to release to the public the Healthcare Text Annotation Guidelines as a standard.

Google Cloud recently launched AutoML Entity Extraction for Healthcare, a low-code tool used to build information extraction models for healthcare applications. There remains a significant execution roadblock on AutoML DIY initiatives caused by the complexity of translating the human cognitive process into machine-readable instructions. Today, this translation occurs thanks to human annotators who annotate text for relevant insights. Yet, training human annotators is a complex endeavor which requires knowledge across fields like linguistics and neuroscience, as well as a good understanding of the business domain. With AutoML, Google wanted to democratize who can build AI. The Healthcare Text Annotation Guidelines are a starting point for annotation projects deployed for healthcare applications.

The guidelines provide a reference for training annotators in addition to explicit blueprints for several healthcare annotation tasks. The annotation guidelines cover the following:
  • The task of medical entity extraction with examples from medical entity types like medications, procedures, and body vitals.
  • Additional tasks with defined examples, such as entity relation annotation and entity attribute annotation. For instance, the guidelines specify how to relate a medical procedure entity to the source medical condition entity, or how to capture the attributes of a medication entity like dosage, frequency, and route of administration.
  • Guidance for annotating an entity’s contextual information like temporal assessment (e.g., current, family history, clinical history), certainty assessment (e.g., unlikely, somewhat likely, likely), and subject (e.g., patient, family member, other).
Google consulted with industry experts and academic institutions in the process of assembling the Healthcare Text Annotation Guidelines. We took inspiration from other open source and research projects like i2b2 and added context to the guidelines to support information extraction needs for industry-applications like Healthcare Effectiveness Data and Information Set (HEDIS) quality reporting. The data types contained in the Healthcare Text Annotation Guidelines are a common denominator across information extraction applications. Each industry application can have additional information extraction needs that are not captured in the current version of the guidelines. We chose to open source this asset so the community can tailor this project to their needs.

We’re thrilled to open source this project. We hope the community will contribute to the refinement and expansion of the Healthcare Text Annotation Guidelines, so they mirror the ever-evolving nature of healthcare.

By Andreea Bodnari, Product Manager and Mikhail Begun, Program Manager—Google Cloud AI

Applying AI to big problems––six research projects we’re supporting in public health, education, disaster prevention, and conservation

Whether it’s forecasting floods or detecting diabetic eye disease -- we’re increasingly seeing people apply AI to address big challenges. In fact, we believe that some of the biggest issues of our time can be tackled with AI. This is why we’ve made research in AI for Social Good one of the key focus areas of Google Research India, the AI lab we started in Bangalore last September. 


As we’re planning to explore applied research in a variety of fields, from healthcare to education, partnering closely with experts in these areas is crucial. Today, we’re kicking off support for six research projects led by organizations from India and across Asia, focusing on addressing social, humanitarian and environmental challenges with AI. Each project is a collaboration between leading academic AI researchers and a nonprofit organization with expertise in the respective area, with support from Google researchers, engineers and program managers. 


In addition to supporting these efforts with expertise in areas such as computer vision, natural language processing, and other deep learning techniques, we are also providing each team with funding and computational resources. 


  • Improving health information for high HIV/AIDS risk communities: Applying AI to identify influencers among marginalized communities at high risk of HIV/AIDS contraction, with the goal of better disseminating health information, providing services, and ultimately reducing the rate of HIV contraction. 
    • Predicting risks for expectant mothers: Using AI to predict the risk of expectant mothers dropping out of healthcare programs, to improve targeted interventions and increase positive healthcare outcomes for mothers and their babies.  
      • Improving consistency of healthcare information input: Applying AI to help ensure consistency in how healthcare information is captured and monitored, to enable more targeted and actionable healthcare interventions.
      • Predicting human-wildlife conflict: Using AI to predict human-wildlife conflict in the state of Maharashtra to help inform data-driven policy making. 
        • Improving dam and barrage water release: Using AI to inform dam and barrage water releases, to help build early warning systems that minimize risk of disasters. 
        • Supporting publishing of underserved Indian language content: Building open-source input tools for underserved Indian languages to accelerate publishing of openly licensed content. 


          Starting on this research journey today, we look forward to supporting academic researchers, organizations and the broader community over the coming months and years to bring these projects to life. Healthcare, conservation, education, and disaster prediction are some of the most difficult challenges of our time. As computer scientists, it’s incredibly humbling and exciting to partner with the community towards making a positive impact for people in India and around the world. 

          Posted by Manish Gupta, Director, Google Research Team in India and Milind Tambe, Director AI for Social Good, Google Research Team in India