CINXE.COM
CellProfiler 3.0: Next-generation image processing for biology | PLOS Biology
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:dc="http://purl.org/dc/terms/" xmlns:doi="http://dx.doi.org/" lang="en" xml:lang="en" itemscope itemtype="http://schema.org/Article" class="no-js"> <head prefix="og: http://ogp.me/ns#"> <link rel="stylesheet" href="/resource/css/screen.css?79f248ebefa43b7800a14562e5049ab4"/> <!-- allows for extra head tags --> <!-- hello --> <link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Open+Sans:400,400i,600"> <link media="print" rel="stylesheet" type="text/css" href="/resource/css/print.css"/> <script type="text/javascript"> var siteUrlPrefix = "/plosbiology/"; </script> <script src="/resource/js/vendor/modernizr-v2.7.1.js" type="text/javascript"></script> <script src="/resource/js/vendor/detectizr.min.js" type="text/javascript"></script> <link rel="shortcut icon" href="/resource/img/favicon.ico" type="image/x-icon"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <link rel="canonical" href="https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.2005970" /> <meta name="description" content="Author summary The “big-data revolution” has struck biology: it is now common for robots to prepare cell samples and take thousands of microscopy images. Looking at the resulting images by eye would be extremely tedious, not to mention subjective. Thus, many biologists find they need software to analyze images easily and accurately. The third major release of our free open-source software CellProfiler is designed to help biologists working with images, whether a few or thousands. Researchers can download an online example workflow (that is, a “pipeline”) or create their own from scratch. Pipelines are easy to save, reuse, and share, helping improve scientific reproducibility. In this release, we’ve added the capability to find and measure objects in three-dimensional (3D) images. We’ve also made changes to CellProfiler’s underlying code to make it faster to run and easier to install, and we’ve added the ability to process images in the cloud and using neural networks (deep learning). We’ve also added more explanations to CellProfiler’s settings to help new users get started. We hope these changes will make CellProfiler an even better tool for current users and will provide new users better ways to get started doing quantitative image analysis." /> <meta name="citation_abstract" content="CellProfiler has enabled the scientific research community to create flexible, modular image analysis pipelines since its release in 2005. Here, we describe CellProfiler 3.0, a new version of the software supporting both whole-volume and plane-wise analysis of three-dimensional (3D) image stacks, increasingly common in biomedical research. CellProfiler’s infrastructure is greatly improved, and we provide a protocol for cloud-based, large-scale image processing. New plugins enable running pretrained deep learning models on images. Designed by and for biologists, CellProfiler equips researchers with powerful computational tools via a well-documented user interface, empowering biologists in all fields to create quantitative, reproducible image analysis workflows."> <meta name="keywords" content="Image processing,Image analysis,Computer software,Deep learning,Open source software,Blastocysts,Biologists,Cell staining" /> <meta name="citation_doi" content="10.1371/journal.pbio.2005970"/> <meta name="citation_author" content="Claire McQuin"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Allen Goodman"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Vasiliy Chernyshev"/> <meta name="citation_author_institution" content="Skolkovo Institute of Science and Technology, Skolkovo, Moscow Region, Russia"/> <meta name="citation_author_institution" content="Moscow Institute of Physics and Technology, Dolgoprudny, Moscow Region, Russia"/> <meta name="citation_author" content="Lee Kamentsky"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Beth A. Cimini"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Kyle W. Karhohs"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Minh Doan"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Liya Ding"/> <meta name="citation_author_institution" content="Allen Institute for Cell Science, Seattle, Washington, United States of America"/> <meta name="citation_author" content="Susanne M. Rafelski"/> <meta name="citation_author_institution" content="Allen Institute for Cell Science, Seattle, Washington, United States of America"/> <meta name="citation_author" content="Derek Thirstrup"/> <meta name="citation_author_institution" content="Allen Institute for Cell Science, Seattle, Washington, United States of America"/> <meta name="citation_author" content="Winfried Wiegraebe"/> <meta name="citation_author_institution" content="Allen Institute for Cell Science, Seattle, Washington, United States of America"/> <meta name="citation_author" content="Shantanu Singh"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Tim Becker"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Juan C. Caicedo"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_author" content="Anne E. Carpenter"/> <meta name="citation_author_institution" content="Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America"/> <meta name="citation_title" content="CellProfiler 3.0: Next-generation image processing for biology"/> <meta itemprop="name" content="CellProfiler 3.0: Next-generation image processing for biology"/> <meta name="citation_journal_title" content="PLOS Biology"/> <meta name="citation_journal_abbrev" content="PLOS Biology"/> <meta name="citation_date" content="Jul 3, 2018"/> <meta name="citation_firstpage" content="e2005970"/> <meta name="citation_issue" content="7"/> <meta name="citation_volume" content="16"/> <meta name="citation_issn" content="1545-7885"/> <meta name="citation_publisher" content="Public Library of Science"/> <meta name="citation_pdf_url" content="https://journals.plos.org/plosbiology/article/file?id=10.1371/journal.pbio.2005970&type=printable"> <meta name="citation_article_type" content="Methods and Resources"> <meta name="dc.identifier" content="10.1371/journal.pbio.2005970" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:site" content="plosbiology"/> <meta name="twitter:title" content="CellProfiler 3.0: Next-generation image processing for biology" /> <meta property="twitter:description" content="Author summary The “big-data revolution” has struck biology: it is now common for robots to prepare cell samples and take thousands of microscopy images. Looking at the resulting images by eye would be extremely tedious, not to mention subjective. Thus, many biologists find they need software to analyze images easily and accurately. The third major release of our free open-source software CellProfiler is designed to help biologists working with images, whether a few or thousands. Researchers can download an online example workflow (that is, a “pipeline”) or create their own from scratch. Pipelines are easy to save, reuse, and share, helping improve scientific reproducibility. In this release, we’ve added the capability to find and measure objects in three-dimensional (3D) images. We’ve also made changes to CellProfiler’s underlying code to make it faster to run and easier to install, and we’ve added the ability to process images in the cloud and using neural networks (deep learning). We’ve also added more explanations to CellProfiler’s settings to help new users get started. We hope these changes will make CellProfiler an even better tool for current users and will provide new users better ways to get started doing quantitative image analysis." /> <meta property="twitter:image" content="https://journals.plos.org/plosbiology/article/figure/image?id=10.1371/journal.pbio.2005970.g004&size=inline" /> <meta property="og:type" content="article" /> <meta property="og:url" content="https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.2005970"/> <meta property="og:title" content="CellProfiler 3.0: Next-generation image processing for biology"/> <meta property="og:description" content="Author summary The “big-data revolution” has struck biology: it is now common for robots to prepare cell samples and take thousands of microscopy images. Looking at the resulting images by eye would be extremely tedious, not to mention subjective. Thus, many biologists find they need software to analyze images easily and accurately. The third major release of our free open-source software CellProfiler is designed to help biologists working with images, whether a few or thousands. Researchers can download an online example workflow (that is, a “pipeline”) or create their own from scratch. Pipelines are easy to save, reuse, and share, helping improve scientific reproducibility. In this release, we’ve added the capability to find and measure objects in three-dimensional (3D) images. We’ve also made changes to CellProfiler’s underlying code to make it faster to run and easier to install, and we’ve added the ability to process images in the cloud and using neural networks (deep learning). We’ve also added more explanations to CellProfiler’s settings to help new users get started. We hope these changes will make CellProfiler an even better tool for current users and will provide new users better ways to get started doing quantitative image analysis."/> <meta property="og:image" content="https://journals.plos.org/plosbiology/article/figure/image?id=10.1371/journal.pbio.2005970.g004&size=inline"/> <meta name="citation_reference" content="citation_title=Biological imaging software tools;citation_author=KW Eliceiri;citation_author=MR Berthold;citation_author=IG Goldberg;citation_author=L Ibáñez;citation_author=BS Manjunath;citation_author=ME Martone;citation_journal_title=Nat Methods;citation_volume=9;citation_number=9;citation_first_page=697;citation_last_page=710;citation_publication_date=2012;"/> <meta name="citation_reference" content="citation_title=ImageJ2: ImageJ for the next generation of scientific image data;citation_author=CT Rueden;citation_author=J Schindelin;citation_author=MC Hiner;citation_author=BE DeZonia;citation_author=AE Walter;citation_author=ET Arena;citation_journal_title=BMC Bioinformatics;citation_volume=18;citation_number=18;citation_first_page=529;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=KNIME for reproducible cross-domain analysis of life science data;citation_author=A Fillbrunn;citation_author=C Dietz;citation_author=J Pfeuffer;citation_author=R Rahn;citation_author=GA Landrum;citation_author=MR Berthold;citation_journal_title=J Biotechnol;citation_volume=261;citation_number=261;citation_first_page=149;citation_last_page=156;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=CellProfiler: image analysis software for identifying and quantifying cell phenotypes;citation_author=AE Carpenter;citation_author=TR Jones;citation_author=MR Lamprecht;citation_author=C Clarke;citation_author=IH Kang;citation_author=O Friman;citation_journal_title=Genome Biol;citation_volume=7;citation_number=7;citation_first_page=R100;citation_publication_date=2006;"/> <meta name="citation_reference" content="citation_title=Improved structure, function and compatibility for CellProfiler: modular high-throughput image analysis software;citation_author=L Kamentsky;citation_author=TR Jones;citation_author=A Fraser;citation_author=M-A Bray;citation_author=DJ Logan;citation_author=KL Madden;citation_journal_title=Bioinformatics;citation_volume=27;citation_number=27;citation_first_page=1179;citation_last_page=1180;citation_publication_date=2011;"/> <meta name="citation_reference" content="citation_title=Review of free software tools for image analysis of fluorescence cell micrographs;citation_author=V Wiesmann;citation_author=D Franz;citation_author=C Held;citation_author=C Munzenmayer;citation_author=R Palmisano;citation_author=T Wittenberg;citation_journal_title=J Microsc;citation_volume=257;citation_number=257;citation_first_page=39;citation_last_page=53;citation_publication_date=2015;"/> <meta name="citation_reference" content="citation_title=Cell Painting, a high-content image-based assay for morphological profiling using multiplexed fluorescent dyes;citation_author=A Bray M-;citation_author=S Singh;citation_author=H Han;citation_author=CT Davis;citation_author=B Borgeson;citation_author=C Hartland;citation_journal_title=Nat Protoc;citation_volume=11;citation_number=11;citation_first_page=1757;citation_last_page=1774;citation_publication_date=2016;"/> <meta name="citation_reference" content="citation_title=Systematic morphological profiling of human gene and allele function via Cell Painting;citation_author=MH Rohban;citation_author=S Singh;citation_author=X Wu;citation_author=JB Berthet;citation_author=M-A Bray;citation_author=Y Shrestha;citation_journal_title=Elife;citation_volume=6;citation_number=6;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=Applications in image-based profiling of perturbations;citation_author=JC Caicedo;citation_author=S Singh;citation_author=AE Carpenter;citation_journal_title=Curr Opin Biotechnol;citation_volume=39;citation_number=39;citation_first_page=134;citation_last_page=142;citation_publication_date=2016;"/> <meta name="citation_reference" content="citation_title=Visualization and Analysis of 3D Microscopic Images;citation_author=F Long;citation_author=J Zhou;citation_author=H Peng;citation_journal_title=PLoS Comput Biol;citation_volume=8;citation_number=8;citation_first_page=e1002519;citation_publication_date=2012;"/> <meta name="citation_reference" content="citation_title=MitoGen: A Framework for Generating 3D Synthetic Time-Lapse Sequences of Cell Populations in Fluorescence Microscopy;citation_author=D Svoboda;citation_author=V Ulman;citation_journal_title=IEEE Trans Med Imaging;citation_volume=36;citation_number=36;citation_first_page=310;citation_last_page=321;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=Generation of digital phantoms of cell nuclei and simulation of image formation in 3D image cytometry;citation_author=D Svoboda;citation_author=M Kozubek;citation_author=S Stejskal;citation_journal_title=Cytometry A;citation_volume=75;citation_number=75;citation_first_page=494;citation_last_page=509;citation_publication_date=2009;"/> <meta name="citation_reference" content="citation_title=Objective Criteria for the Evaluation of Clustering Methods;citation_author=WM Rand;citation_journal_title=J Am Stat Assoc;citation_volume=66;citation_number=66;citation_first_page=846;citation_last_page=850;citation_publication_date=1971;"/> <meta name="citation_reference" content="citation_title=An objective comparison of cell-tracking algorithms;citation_author=V Ulman;citation_author=M Maška;citation_author=KEG Magnusson;citation_author=O Ronneberger;citation_author=C Haubold;citation_author=N Harder;citation_journal_title=Nat Methods;citation_volume=14;citation_number=14;citation_first_page=1141;citation_last_page=1152;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=Annotated high-throughput microscopy image sets for validation;citation_author=V Ljosa;citation_author=KL Sokolnicki;citation_author=AE Carpenter;citation_journal_title=Nat Methods;citation_volume=9;citation_number=9;citation_first_page=637;citation_publication_date=2012;"/> <meta name="citation_reference" content="citation_title=Deep learning;citation_author=Y LeCun;citation_author=Y Bengio;citation_author=G Hinton;citation_journal_title=Nature;citation_volume=521;citation_number=521;citation_first_page=436;citation_last_page=444;citation_publication_date=2015;"/> <meta name="citation_reference" content="citation_title=ImageNet Classification with Deep Convolutional Neural Networks;citation_inbook_title=Advances in Neural Information Processing Systems 25;citation_author=A Krizhevsky;citation_author=I Sutskever;citation_author=GE Hinton;citation_first_page=1097;citation_last_page=1105;citation_publication_date=2012;citation_publisher=Curran Associates, Inc"/> <meta name="citation_reference" content="citation_title=U-Net: Convolutional Networks for Biomedical Image Segmentation;citation_author=O Ronneberger;citation_author=P Fischer;citation_author=T Brox;citation_journal_title=Medical Image Computing and Computer-Assisted Intervention–MICCAI 2015;citation_first_page=234;citation_last_page=241;citation_publication_date=2015;"/> <meta name="citation_reference" content="citation_title=TensorFlow: A System for Large-Scale Machine Learning;citation_author=M Abadi;citation_author=P Barham;citation_author=J Chen;citation_author=Z Chen;citation_author=A Davis;citation_author=J Dean;citation_journal_title=OSDI;citation_first_page=265;citation_last_page=283;citation_publication_date=2016;"/> <meta name="citation_reference" content="Jia Y, Shelhamer E, Donahue J, Karayev S, Long J, Girshick R, et al. Caffe: Convolutional Architecture for Fast Feature Embedding. Proceedings of the 22Nd ACM International Conference on Multimedia. New York, NY, USA: ACM; 2014. pp. 675–678."/> <meta name="citation_reference" content="citation_title=Assessing microscope image focus quality with deep learning;citation_author=SJ Yang;citation_author=M Berndl;citation_author=D Michael Ando;citation_author=M Barch;citation_author=A Narayanaswamy;citation_author=E Christiansen;citation_journal_title=BMC Bioinformatics;citation_volume=19;citation_number=19;citation_first_page=28962;citation_publication_date=2018;"/> <meta name="citation_reference" content="citation_title=Automated Training of Deep Convolutional Neural Networks for Cell Segmentation;citation_author=SK Sadanandan;citation_author=P Ranefall;citation_author=S Le Guyader;citation_author=C Wählby;citation_journal_title=Sci Rep;citation_volume=7;citation_number=7;citation_first_page=7860;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=Ebola virus. Two-pore channels control Ebola virus host cell entry and are drug targets for disease treatment;citation_author=Y Sakurai;citation_author=AA Kolokoltsov;citation_author=C-C Chen;citation_author=MW Tidwell;citation_author=WE Bauta;citation_author=N Klugbauer;citation_journal_title=Science;citation_volume=347;citation_number=347;citation_first_page=995;citation_last_page=998;citation_publication_date=2015;"/> <meta name="citation_reference" content="citation_title=Identification of host-targeted small molecules that restrict intracellular Mycobacterium tuberculosis growth;citation_author=SA Stanley;citation_author=AK Barczak;citation_author=MR Silvis;citation_author=SS Luo;citation_author=K Sogi;citation_author=M Vokes;citation_journal_title=PLoS Pathog;citation_volume=10;citation_number=10;citation_first_page=e1003946;citation_publication_date=2014;"/> <meta name="citation_reference" content="citation_title=Identification of regulators of polyploidization presents therapeutic targets for treatment of AMKL;citation_author=Q Wen;citation_author=B Goldenson;citation_author=SJ Silver;citation_author=M Schenone;citation_author=V Dancik;citation_author=Z Huang;citation_journal_title=Cell;citation_volume=150;citation_number=150;citation_first_page=575;citation_last_page=589;citation_publication_date=2012;"/> <meta name="citation_reference" content="citation_title=Niche-based screening identifies small-molecule inhibitors of leukemia stem cells;citation_author=KA Hartwell;citation_author=PG Miller;citation_author=S Mukherjee;citation_author=AR Kahn;citation_author=AL Stewart;citation_author=DJ Logan;citation_journal_title=Nat Chem Biol;citation_volume=9;citation_number=9;citation_first_page=840;citation_last_page=848;citation_publication_date=2013;"/> <meta name="citation_reference" content="citation_title=Strategy for identifying repurposed drugs for the treatment of cerebral cavernous malformation;citation_author=CC Gibson;citation_author=W Zhu;citation_author=CT Davis;citation_author=JA Bowman-Kirigin;citation_author=AC Chan;citation_author=J Ling;citation_journal_title=Circulation;citation_volume=131;citation_number=131;citation_first_page=289;citation_last_page=299;citation_publication_date=2015;"/> <meta name="citation_reference" content="citation_title=Image-based ex-vivo drug screening for patients with aggressive haematological malignancies: interim results from a single-arm, open-label, pilot study;citation_author=B Snijder;citation_author=GI Vladimer;citation_author=N Krall;citation_author=K Miura;citation_author=S Schmolke A-;citation_author=C Kornauth;citation_journal_title=Lancet Haematol;citation_volume=4;citation_number=4;citation_first_page=e595;citation_last_page=e606;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=IMAGING. “Cell painting” highlights responses to drugs and toxins;citation_author=E Pennisi;citation_journal_title=Science;citation_volume=352;citation_number=352;citation_first_page=877;citation_last_page=878;citation_publication_date=2016;"/> <meta name="citation_reference" content="citation_title=Data-analysis strategies for image-based cell profiling;citation_author=JC Caicedo;citation_author=S Cooper;citation_author=F Heigwer;citation_author=S Warchal;citation_author=P Qiu;citation_author=C Molnar;citation_journal_title=Nat Methods;citation_volume=14;citation_number=14;citation_first_page=849;citation_last_page=863;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=CellProfiler Analyst: interactive data exploration, analysis and classification of large biological image sets;citation_author=D Dao;citation_author=AN Fraser;citation_author=J Hung;citation_author=V Ljosa;citation_author=S Singh;citation_author=AE Carpenter;citation_journal_title=Bioinformatics;citation_publication_date=2016;"/> <meta name="citation_reference" content="citation_title=Opportunities And Obstacles For Deep Learning In Biology And Medicine;citation_author=T Ching;citation_author=DS Himmelstein;citation_author=BK Beaulieu-Jones;citation_author=AA Kalinin;citation_author=BT Do;citation_author=GP Way;citation_journal_title=bioRxiv;citation_first_page=142760;citation_publication_date=2017;"/> <meta name="citation_reference" content="citation_title=Blastocyst-like structures generated solely from stem cells;citation_author=NC Rivron;citation_author=J Frias-Aldeguer;citation_author=EJ Vrij;citation_author=J-C Boisset;citation_author=J Korving;citation_author=J Vivié;citation_journal_title=Nature;citation_volume=557;citation_number=557;citation_first_page=106;citation_last_page=111;citation_publication_date=2018;"/> <meta name="citation_reference" content="citation_title=Systematic gene tagging using CRISPR/Cas9 in human stem cells to illuminate cell organization;citation_author=B Roberts;citation_author=A Haupt;citation_author=A Tucker;citation_author=T Grancharova;citation_author=J Arakaki;citation_author=MA Fuqua;citation_journal_title=Mol Biol Cell;citation_volume=28;citation_number=28;citation_first_page=2854;citation_last_page=2874;citation_publication_date=2017;"/> <!-- DoubleClick overall ad setup script --> <script type='text/javascript'> var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; (function() { var gads = document.createElement('script'); gads.async = true; gads.type = 'text/javascript'; var useSSL = 'https:' == document.location.protocol; gads.src = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(gads, node); })(); </script> <!-- DoubleClick ad slot setup script --> <script id="doubleClickSetupScript" type='text/javascript'> googletag.cmd.push(function() { googletag.defineSlot('/75507958/PBIO_728x90_ATF', [728, 90], 'div-gpt-ad-1458247671871-0').addService(googletag.pubads()); googletag.defineSlot('/75507958/PBIO_160x600_BTF', [160, 600], 'div-gpt-ad-1458247671871-1').addService(googletag.pubads()); var personalizedAds = window.plosCookieConsent && window.plosCookieConsent.hasConsented('advertising'); googletag.pubads().setRequestNonPersonalizedAds(personalizedAds ? 0 : 1); googletag.pubads().enableSingleRequest(); googletag.enableServices(); }); </script> <script type="text/javascript"> var WombatConfig = WombatConfig || {}; WombatConfig.journalKey = "PLoSBiology"; WombatConfig.journalName = "PLOS Biology"; WombatConfig.figurePath = "/plosbiology/article/figure/image"; WombatConfig.figShareInstitutionString = "plos"; WombatConfig.doiResolverPrefix = "https://dx.plos.org/"; </script> <script type="text/javascript"> var WombatConfig = WombatConfig || {}; WombatConfig.metrics = WombatConfig.metrics || {}; WombatConfig.metrics.referenceUrl = "http://lagotto.io/plos"; WombatConfig.metrics.googleScholarUrl = "https://scholar.google.com/scholar"; WombatConfig.metrics.googleScholarCitationUrl = WombatConfig.metrics.googleScholarUrl + "?hl=en&lr=&q="; WombatConfig.metrics.crossrefUrl = "https://www.crossref.org"; </script> <script defer="defer" src="/resource/js/defer.js?13928eb59791c3cc61cf"></script><script src="/resource/js/sync.js?13928eb59791c3cc61cf"></script> <script src="/resource/js/vendor/jquery.min.js" type="text/javascript"></script> <script type="text/javascript" src="https://widgets.figshare.com/static/figshare.js"></script> <script src="/resource/js/vendor/fastclick/lib/fastclick.js" type="text/javascript"></script> <script src="/resource/js/vendor/foundation/foundation.js" type="text/javascript"></script> <script src="/resource/js/vendor/underscore-min.js" type="text/javascript"></script> <script src="/resource/js/vendor/underscore.string.min.js" type="text/javascript"></script> <script src="/resource/js/vendor/moment.js" type="text/javascript"></script> <script src="/resource/js/vendor/jquery-ui-effects.min.js" type="text/javascript"></script> <script src="/resource/js/vendor/foundation/foundation.tooltip.js" type="text/javascript"></script> <script src="/resource/js/vendor/foundation/foundation.dropdown.js" type="text/javascript"></script> <script src="/resource/js/vendor/foundation/foundation.tab.js" type="text/javascript"></script> <script src="/resource/js/vendor/foundation/foundation.reveal.js" type="text/javascript"></script> <script src="/resource/js/vendor/foundation/foundation.slider.js" type="text/javascript"></script> <script src="/resource/js/util/utils.js" type="text/javascript"></script> <script src="/resource/js/components/toggle.js" type="text/javascript"></script> <script src="/resource/js/components/truncate_elem.js" type="text/javascript"></script> <script src="/resource/js/components/tooltip_hover.js" type="text/javascript"></script> <script src="/resource/js/vendor/jquery.dotdotdot.js" type="text/javascript"></script> <!--For Google Tag manager to be able to track site information --> <script> dataLayer = [{ 'mobileSite': 'false', 'desktopSite': 'true' }]; </script> <title>CellProfiler 3.0: Next-generation image processing for biology | PLOS Biology</title> </head> <body class="article plosbiology"> <!-- Google Tag Manager --> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-TP26BH" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-TP26BH'); </script> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-MQQMGF" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-MQQMGF');</script> <!-- End Google Tag Manager --> <!-- New Relic --> <script type="text/javascript"> ;window.NREUM||(NREUM={});NREUM.init={distributed_tracing:{enabled:true},privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]}}; window.NREUM||(NREUM={}),__nr_require=function(t,e,n){function r(n){if(!e[n]){var o=e[n]={exports:{}};t[n][0].call(o.exports,function(e){var o=t[n][1][e];return r(o||e)},o,o.exports)}return e[n].exports}if("function"==typeof __nr_require)return __nr_require;for(var o=0;o<n.length;o++)r(n[o]);return r}({1:[function(t,e,n){function r(t){try{s.console&&console.log(t)}catch(e){}}var o,i=t("ee"),a=t(32),s={};try{o=localStorage.getItem("__nr_flags").split(","),console&&"function"==typeof console.log&&(s.console=!0,o.indexOf("dev")!==-1&&(s.dev=!0),o.indexOf("nr_dev")!==-1&&(s.nrDev=!0))}catch(c){}s.nrDev&&i.on("internal-error",function(t){r(t.stack)}),s.dev&&i.on("fn-err",function(t,e,n){r(n.stack)}),s.dev&&(r("NR AGENT IN DEVELOPMENT MODE"),r("flags: "+a(s,function(t,e){return t}).join(", ")))},{}],2:[function(t,e,n){function r(t,e,n,r,s){try{l?l-=1:o(s||new UncaughtException(t,e,n),!0)}catch(f){try{i("ierr",[f,c.now(),!0])}catch(d){}}return"function"==typeof u&&u.apply(this,a(arguments))}function UncaughtException(t,e,n){this.message=t||"Uncaught error with no additional information",this.sourceURL=e,this.line=n}function o(t,e){var n=e?null:c.now();i("err",[t,n])}var i=t("handle"),a=t(33),s=t("ee"),c=t("loader"),f=t("gos"),u=window.onerror,d=!1,p="nr@seenError";if(!c.disabled){var l=0;c.features.err=!0,t(1),window.onerror=r;try{throw new Error}catch(h){"stack"in h&&(t(14),t(13),"addEventListener"in window&&t(7),c.xhrWrappable&&t(15),d=!0)}s.on("fn-start",function(t,e,n){d&&(l+=1)}),s.on("fn-err",function(t,e,n){d&&!n[p]&&(f(n,p,function(){return!0}),this.thrown=!0,o(n))}),s.on("fn-end",function(){d&&!this.thrown&&l>0&&(l-=1)}),s.on("internal-error",function(t){i("ierr",[t,c.now(),!0])})}},{}],3:[function(t,e,n){var r=t("loader");r.disabled||(r.features.ins=!0)},{}],4:[function(t,e,n){function r(){U++,L=g.hash,this[u]=y.now()}function o(){U--,g.hash!==L&&i(0,!0);var t=y.now();this[h]=~~this[h]+t-this[u],this[d]=t}function i(t,e){E.emit("newURL",[""+g,e])}function a(t,e){t.on(e,function(){this[e]=y.now()})}var s="-start",c="-end",f="-body",u="fn"+s,d="fn"+c,p="cb"+s,l="cb"+c,h="jsTime",m="fetch",v="addEventListener",w=window,g=w.location,y=t("loader");if(w[v]&&y.xhrWrappable&&!y.disabled){var x=t(11),b=t(12),E=t(9),R=t(7),O=t(14),T=t(8),P=t(15),S=t(10),M=t("ee"),N=M.get("tracer"),C=t(23);t(17),y.features.spa=!0;var L,U=0;M.on(u,r),b.on(p,r),S.on(p,r),M.on(d,o),b.on(l,o),S.on(l,o),M.buffer([u,d,"xhr-resolved"]),R.buffer([u]),O.buffer(["setTimeout"+c,"clearTimeout"+s,u]),P.buffer([u,"new-xhr","send-xhr"+s]),T.buffer([m+s,m+"-done",m+f+s,m+f+c]),E.buffer(["newURL"]),x.buffer([u]),b.buffer(["propagate",p,l,"executor-err","resolve"+s]),N.buffer([u,"no-"+u]),S.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"]),a(T,m+s),a(T,m+"-done"),a(S,"new-jsonp"),a(S,"jsonp-end"),a(S,"cb-start"),E.on("pushState-end",i),E.on("replaceState-end",i),w[v]("hashchange",i,C(!0)),w[v]("load",i,C(!0)),w[v]("popstate",function(){i(0,U>1)},C(!0))}},{}],5:[function(t,e,n){function r(){var t=new PerformanceObserver(function(t,e){var n=t.getEntries();s(v,[n])});try{t.observe({entryTypes:["resource"]})}catch(e){}}function o(t){if(s(v,[window.performance.getEntriesByType(w)]),window.performance["c"+p])try{window.performance[h](m,o,!1)}catch(t){}else try{window.performance[h]("webkit"+m,o,!1)}catch(t){}}function i(t){}if(window.performance&&window.performance.timing&&window.performance.getEntriesByType){var a=t("ee"),s=t("handle"),c=t(14),f=t(13),u=t(6),d=t(23),p="learResourceTimings",l="addEventListener",h="removeEventListener",m="resourcetimingbufferfull",v="bstResource",w="resource",g="-start",y="-end",x="fn"+g,b="fn"+y,E="bstTimer",R="pushState",O=t("loader");if(!O.disabled){O.features.stn=!0,t(9),"addEventListener"in window&&t(7);var T=NREUM.o.EV;a.on(x,function(t,e){var n=t[0];n instanceof T&&(this.bstStart=O.now())}),a.on(b,function(t,e){var n=t[0];n instanceof T&&s("bst",[n,e,this.bstStart,O.now()])}),c.on(x,function(t,e,n){this.bstStart=O.now(),this.bstType=n}),c.on(b,function(t,e){s(E,[e,this.bstStart,O.now(),this.bstType])}),f.on(x,function(){this.bstStart=O.now()}),f.on(b,function(t,e){s(E,[e,this.bstStart,O.now(),"requestAnimationFrame"])}),a.on(R+g,function(t){this.time=O.now(),this.startPath=location.pathname+location.hash}),a.on(R+y,function(t){s("bstHist",[location.pathname+location.hash,this.startPath,this.time])}),u()?(s(v,[window.performance.getEntriesByType("resource")]),r()):l in window.performance&&(window.performance["c"+p]?window.performance[l](m,o,d(!1)):window.performance[l]("webkit"+m,o,d(!1))),document[l]("scroll",i,d(!1)),document[l]("keypress",i,d(!1)),document[l]("click",i,d(!1))}}},{}],6:[function(t,e,n){e.exports=function(){return"PerformanceObserver"in window&&"function"==typeof window.PerformanceObserver}},{}],7:[function(t,e,n){function r(t){for(var e=t;e&&!e.hasOwnProperty(u);)e=Object.getPrototypeOf(e);e&&o(e)}function o(t){s.inPlace(t,[u,d],"-",i)}function i(t,e){return t[1]}var a=t("ee").get("events"),s=t("wrap-function")(a,!0),c=t("gos"),f=XMLHttpRequest,u="addEventListener",d="removeEventListener";e.exports=a,"getPrototypeOf"in Object?(r(document),r(window),r(f.prototype)):f.prototype.hasOwnProperty(u)&&(o(window),o(f.prototype)),a.on(u+"-start",function(t,e){var n=t[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var r=c(n,"nr@wrapped",function(){function t(){if("function"==typeof n.handleEvent)return n.handleEvent.apply(n,arguments)}var e={object:t,"function":n}[typeof n];return e?s(e,"fn-",null,e.name||"anonymous"):n});this.wrapped=t[1]=r}}),a.on(d+"-start",function(t){t[1]=this.wrapped||t[1]})},{}],8:[function(t,e,n){function r(t,e,n){var r=t[e];"function"==typeof r&&(t[e]=function(){var t=i(arguments),e={};o.emit(n+"before-start",[t],e);var a;e[m]&&e[m].dt&&(a=e[m].dt);var s=r.apply(this,t);return o.emit(n+"start",[t,a],s),s.then(function(t){return o.emit(n+"end",[null,t],s),t},function(t){throw o.emit(n+"end",[t],s),t})})}var o=t("ee").get("fetch"),i=t(33),a=t(32);e.exports=o;var s=window,c="fetch-",f=c+"body-",u=["arrayBuffer","blob","json","text","formData"],d=s.Request,p=s.Response,l=s.fetch,h="prototype",m="nr@context";d&&p&&l&&(a(u,function(t,e){r(d[h],e,f),r(p[h],e,f)}),r(s,"fetch",c),o.on(c+"end",function(t,e){var n=this;if(e){var r=e.headers.get("content-length");null!==r&&(n.rxSize=r),o.emit(c+"done",[null,e],n)}else o.emit(c+"done",[t],n)}))},{}],9:[function(t,e,n){var r=t("ee").get("history"),o=t("wrap-function")(r);e.exports=r;var i=window.history&&window.history.constructor&&window.history.constructor.prototype,a=window.history;i&&i.pushState&&i.replaceState&&(a=i),o.inPlace(a,["pushState","replaceState"],"-")},{}],10:[function(t,e,n){function r(t){function e(){f.emit("jsonp-end",[],l),t.removeEventListener("load",e,c(!1)),t.removeEventListener("error",n,c(!1))}function n(){f.emit("jsonp-error",[],l),f.emit("jsonp-end",[],l),t.removeEventListener("load",e,c(!1)),t.removeEventListener("error",n,c(!1))}var r=t&&"string"==typeof t.nodeName&&"script"===t.nodeName.toLowerCase();if(r){var o="function"==typeof t.addEventListener;if(o){var a=i(t.src);if(a){var d=s(a),p="function"==typeof d.parent[d.key];if(p){var l={};u.inPlace(d.parent,[d.key],"cb-",l),t.addEventListener("load",e,c(!1)),t.addEventListener("error",n,c(!1)),f.emit("new-jsonp",[t.src],l)}}}}}function o(){return"addEventListener"in window}function i(t){var e=t.match(d);return e?e[1]:null}function a(t,e){var n=t.match(l),r=n[1],o=n[3];return o?a(o,e[r]):e[r]}function s(t){var e=t.match(p);return e&&e.length>=3?{key:e[2],parent:a(e[1],window)}:{key:t,parent:window}}var c=t(23),f=t("ee").get("jsonp"),u=t("wrap-function")(f);if(e.exports=f,o()){var d=/[?&](?:callback|cb)=([^&#]+)/,p=/(.*)\.([^.]+)/,l=/^(\w+)(\.|$)(.*)$/,h=["appendChild","insertBefore","replaceChild"];Node&&Node.prototype&&Node.prototype.appendChild?u.inPlace(Node.prototype,h,"dom-"):(u.inPlace(HTMLElement.prototype,h,"dom-"),u.inPlace(HTMLHeadElement.prototype,h,"dom-"),u.inPlace(HTMLBodyElement.prototype,h,"dom-")),f.on("dom-start",function(t){r(t[0])})}},{}],11:[function(t,e,n){var r=t("ee").get("mutation"),o=t("wrap-function")(r),i=NREUM.o.MO;e.exports=r,i&&(window.MutationObserver=function(t){return this instanceof i?new i(o(t,"fn-")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype)},{}],12:[function(t,e,n){function r(t){var e=i.context(),n=s(t,"executor-",e,null,!1),r=new f(n);return i.context(r).getCtx=function(){return e},r}var o=t("wrap-function"),i=t("ee").get("promise"),a=t("ee").getOrSetContext,s=o(i),c=t(32),f=NREUM.o.PR;e.exports=i,f&&(window.Promise=r,["all","race"].forEach(function(t){var e=f[t];f[t]=function(n){function r(t){return function(){i.emit("propagate",[null,!o],a,!1,!1),o=o||!t}}var o=!1;c(n,function(e,n){Promise.resolve(n).then(r("all"===t),r(!1))});var a=e.apply(f,arguments),s=f.resolve(a);return s}}),["resolve","reject"].forEach(function(t){var e=f[t];f[t]=function(t){var n=e.apply(f,arguments);return t!==n&&i.emit("propagate",[t,!0],n,!1,!1),n}}),f.prototype["catch"]=function(t){return this.then(null,t)},f.prototype=Object.create(f.prototype,{constructor:{value:r}}),c(Object.getOwnPropertyNames(f),function(t,e){try{r[e]=f[e]}catch(n){}}),o.wrapInPlace(f.prototype,"then",function(t){return function(){var e=this,n=o.argsToArray.apply(this,arguments),r=a(e);r.promise=e,n[0]=s(n[0],"cb-",r,null,!1),n[1]=s(n[1],"cb-",r,null,!1);var c=t.apply(this,n);return r.nextPromise=c,i.emit("propagate",[e,!0],c,!1,!1),c}}),i.on("executor-start",function(t){t[0]=s(t[0],"resolve-",this,null,!1),t[1]=s(t[1],"resolve-",this,null,!1)}),i.on("executor-err",function(t,e,n){t[1](n)}),i.on("cb-end",function(t,e,n){i.emit("propagate",[n,!0],this.nextPromise,!1,!1)}),i.on("propagate",function(t,e,n){this.getCtx&&!e||(this.getCtx=function(){if(t instanceof Promise)var e=i.context(t);return e&&e.getCtx?e.getCtx():this})}),r.toString=function(){return""+f})},{}],13:[function(t,e,n){var r=t("ee").get("raf"),o=t("wrap-function")(r),i="equestAnimationFrame";e.exports=r,o.inPlace(window,["r"+i,"mozR"+i,"webkitR"+i,"msR"+i],"raf-"),r.on("raf-start",function(t){t[0]=o(t[0],"fn-")})},{}],14:[function(t,e,n){function r(t,e,n){t[0]=a(t[0],"fn-",null,n)}function o(t,e,n){this.method=n,this.timerDuration=isNaN(t[1])?0:+t[1],t[0]=a(t[0],"fn-",this,n)}var i=t("ee").get("timer"),a=t("wrap-function")(i),s="setTimeout",c="setInterval",f="clearTimeout",u="-start",d="-";e.exports=i,a.inPlace(window,[s,"setImmediate"],s+d),a.inPlace(window,[c],c+d),a.inPlace(window,[f,"clearImmediate"],f+d),i.on(c+u,r),i.on(s+u,o)},{}],15:[function(t,e,n){function r(t,e){d.inPlace(e,["onreadystatechange"],"fn-",s)}function o(){var t=this,e=u.context(t);t.readyState>3&&!e.resolved&&(e.resolved=!0,u.emit("xhr-resolved",[],t)),d.inPlace(t,y,"fn-",s)}function i(t){x.push(t),m&&(E?E.then(a):w?w(a):(R=-R,O.data=R))}function a(){for(var t=0;t<x.length;t++)r([],x[t]);x.length&&(x=[])}function s(t,e){return e}function c(t,e){for(var n in t)e[n]=t[n];return e}t(7);var f=t("ee"),u=f.get("xhr"),d=t("wrap-function")(u),p=t(23),l=NREUM.o,h=l.XHR,m=l.MO,v=l.PR,w=l.SI,g="readystatechange",y=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],x=[];e.exports=u;var b=window.XMLHttpRequest=function(t){var e=new h(t);try{u.emit("new-xhr",[e],e),e.addEventListener(g,o,p(!1))}catch(n){try{u.emit("internal-error",[n])}catch(r){}}return e};if(c(h,b),b.prototype=h.prototype,d.inPlace(b.prototype,["open","send"],"-xhr-",s),u.on("send-xhr-start",function(t,e){r(t,e),i(e)}),u.on("open-xhr-start",r),m){var E=v&&v.resolve();if(!w&&!v){var R=1,O=document.createTextNode(R);new m(a).observe(O,{characterData:!0})}}else f.on("fn-end",function(t){t[0]&&t[0].type===g||a()})},{}],16:[function(t,e,n){function r(t){if(!s(t))return null;var e=window.NREUM;if(!e.loader_config)return null;var n=(e.loader_config.accountID||"").toString()||null,r=(e.loader_config.agentID||"").toString()||null,f=(e.loader_config.trustKey||"").toString()||null;if(!n||!r)return null;var h=l.generateSpanId(),m=l.generateTraceId(),v=Date.now(),w={spanId:h,traceId:m,timestamp:v};return(t.sameOrigin||c(t)&&p())&&(w.traceContextParentHeader=o(h,m),w.traceContextStateHeader=i(h,v,n,r,f)),(t.sameOrigin&&!u()||!t.sameOrigin&&c(t)&&d())&&(w.newrelicHeader=a(h,m,v,n,r,f)),w}function o(t,e){return"00-"+e+"-"+t+"-01"}function i(t,e,n,r,o){var i=0,a="",s=1,c="",f="";return o+"@nr="+i+"-"+s+"-"+n+"-"+r+"-"+t+"-"+a+"-"+c+"-"+f+"-"+e}function a(t,e,n,r,o,i){var a="btoa"in window&&"function"==typeof window.btoa;if(!a)return null;var s={v:[0,1],d:{ty:"Browser",ac:r,ap:o,id:t,tr:e,ti:n}};return i&&r!==i&&(s.d.tk=i),btoa(JSON.stringify(s))}function s(t){return f()&&c(t)}function c(t){var e=!1,n={};if("init"in NREUM&&"distributed_tracing"in NREUM.init&&(n=NREUM.init.distributed_tracing),t.sameOrigin)e=!0;else if(n.allowed_origins instanceof Array)for(var r=0;r<n.allowed_origins.length;r++){var o=h(n.allowed_origins[r]);if(t.hostname===o.hostname&&t.protocol===o.protocol&&t.port===o.port){e=!0;break}}return e}function f(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&!!NREUM.init.distributed_tracing.enabled}function u(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&!!NREUM.init.distributed_tracing.exclude_newrelic_header}function d(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&NREUM.init.distributed_tracing.cors_use_newrelic_header!==!1}function p(){return"init"in NREUM&&"distributed_tracing"in NREUM.init&&!!NREUM.init.distributed_tracing.cors_use_tracecontext_headers}var l=t(29),h=t(18);e.exports={generateTracePayload:r,shouldGenerateTrace:s}},{}],17:[function(t,e,n){function r(t){var e=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var r=0;r<p;r++)t.removeEventListener(d[r],this.listener,!1);e.aborted||(n.duration=a.now()-this.startTime,this.loadCaptureCalled||4!==t.readyState?null==e.status&&(e.status=0):i(this,t),n.cbTime=this.cbTime,s("xhr",[e,n,this.startTime,this.endTime,"xhr"],this))}}function o(t,e){var n=c(e),r=t.params;r.hostname=n.hostname,r.port=n.port,r.protocol=n.protocol,r.host=n.hostname+":"+n.port,r.pathname=n.pathname,t.parsedOrigin=n,t.sameOrigin=n.sameOrigin}function i(t,e){t.params.status=e.status;var n=v(e,t.lastSize);if(n&&(t.metrics.rxSize=n),t.sameOrigin){var r=e.getResponseHeader("X-NewRelic-App-Data");r&&(t.params.cat=r.split(", ").pop())}t.loadCaptureCalled=!0}var a=t("loader");if(a.xhrWrappable&&!a.disabled){var s=t("handle"),c=t(18),f=t(16).generateTracePayload,u=t("ee"),d=["load","error","abort","timeout"],p=d.length,l=t("id"),h=t(24),m=t(22),v=t(19),w=t(23),g=NREUM.o.REQ,y=window.XMLHttpRequest;a.features.xhr=!0,t(15),t(8),u.on("new-xhr",function(t){var e=this;e.totalCbs=0,e.called=0,e.cbTime=0,e.end=r,e.ended=!1,e.xhrGuids={},e.lastSize=null,e.loadCaptureCalled=!1,e.params=this.params||{},e.metrics=this.metrics||{},t.addEventListener("load",function(n){i(e,t)},w(!1)),h&&(h>34||h<10)||t.addEventListener("progress",function(t){e.lastSize=t.loaded},w(!1))}),u.on("open-xhr-start",function(t){this.params={method:t[0]},o(this,t[1]),this.metrics={}}),u.on("open-xhr-end",function(t,e){"loader_config"in NREUM&&"xpid"in NREUM.loader_config&&this.sameOrigin&&e.setRequestHeader("X-NewRelic-ID",NREUM.loader_config.xpid);var n=f(this.parsedOrigin);if(n){var r=!1;n.newrelicHeader&&(e.setRequestHeader("newrelic",n.newrelicHeader),r=!0),n.traceContextParentHeader&&(e.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&e.setRequestHeader("tracestate",n.traceContextStateHeader),r=!0),r&&(this.dt=n)}}),u.on("send-xhr-start",function(t,e){var n=this.metrics,r=t[0],o=this;if(n&&r){var i=m(r);i&&(n.txSize=i)}this.startTime=a.now(),this.listener=function(t){try{"abort"!==t.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==t.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof e.onload))&&o.end(e)}catch(n){try{u.emit("internal-error",[n])}catch(r){}}};for(var s=0;s<p;s++)e.addEventListener(d[s],this.listener,w(!1))}),u.on("xhr-cb-time",function(t,e,n){this.cbTime+=t,e?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof n.onload||this.end(n)}),u.on("xhr-load-added",function(t,e){var n=""+l(t)+!!e;this.xhrGuids&&!this.xhrGuids[n]&&(this.xhrGuids[n]=!0,this.totalCbs+=1)}),u.on("xhr-load-removed",function(t,e){var n=""+l(t)+!!e;this.xhrGuids&&this.xhrGuids[n]&&(delete this.xhrGuids[n],this.totalCbs-=1)}),u.on("xhr-resolved",function(){this.endTime=a.now()}),u.on("addEventListener-end",function(t,e){e instanceof y&&"load"===t[0]&&u.emit("xhr-load-added",[t[1],t[2]],e)}),u.on("removeEventListener-end",function(t,e){e instanceof y&&"load"===t[0]&&u.emit("xhr-load-removed",[t[1],t[2]],e)}),u.on("fn-start",function(t,e,n){e instanceof y&&("onload"===n&&(this.onload=!0),("load"===(t[0]&&t[0].type)||this.onload)&&(this.xhrCbStart=a.now()))}),u.on("fn-end",function(t,e){this.xhrCbStart&&u.emit("xhr-cb-time",[a.now()-this.xhrCbStart,this.onload,e],e)}),u.on("fetch-before-start",function(t){function e(t,e){var n=!1;return e.newrelicHeader&&(t.set("newrelic",e.newrelicHeader),n=!0),e.traceContextParentHeader&&(t.set("traceparent",e.traceContextParentHeader),e.traceContextStateHeader&&t.set("tracestate",e.traceContextStateHeader),n=!0),n}var n,r=t[1]||{};"string"==typeof t[0]?n=t[0]:t[0]&&t[0].url?n=t[0].url:window.URL&&t[0]&&t[0]instanceof URL&&(n=t[0].href),n&&(this.parsedOrigin=c(n),this.sameOrigin=this.parsedOrigin.sameOrigin);var o=f(this.parsedOrigin);if(o&&(o.newrelicHeader||o.traceContextParentHeader))if("string"==typeof t[0]||window.URL&&t[0]&&t[0]instanceof URL){var i={};for(var a in r)i[a]=r[a];i.headers=new Headers(r.headers||{}),e(i.headers,o)&&(this.dt=o),t.length>1?t[1]=i:t.push(i)}else t[0]&&t[0].headers&&e(t[0].headers,o)&&(this.dt=o)}),u.on("fetch-start",function(t,e){this.params={},this.metrics={},this.startTime=a.now(),this.dt=e,t.length>=1&&(this.target=t[0]),t.length>=2&&(this.opts=t[1]);var n,r=this.opts||{},i=this.target;"string"==typeof i?n=i:"object"==typeof i&&i instanceof g?n=i.url:window.URL&&"object"==typeof i&&i instanceof URL&&(n=i.href),o(this,n);var s=(""+(i&&i instanceof g&&i.method||r.method||"GET")).toUpperCase();this.params.method=s,this.txSize=m(r.body)||0}),u.on("fetch-done",function(t,e){this.endTime=a.now(),this.params||(this.params={}),this.params.status=e?e.status:0;var n;"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);var r={txSize:this.txSize,rxSize:n,duration:a.now()-this.startTime};s("xhr",[this.params,r,this.startTime,this.endTime,"fetch"],this)})}},{}],18:[function(t,e,n){var r={};e.exports=function(t){if(t in r)return r[t];var e=document.createElement("a"),n=window.location,o={};e.href=t,o.port=e.port;var i=e.href.split("://");!o.port&&i[1]&&(o.port=i[1].split("/")[0].split("@").pop().split(":")[1]),o.port&&"0"!==o.port||(o.port="https"===i[0]?"443":"80"),o.hostname=e.hostname||n.hostname,o.pathname=e.pathname,o.protocol=i[0],"/"!==o.pathname.charAt(0)&&(o.pathname="/"+o.pathname);var a=!e.protocol||":"===e.protocol||e.protocol===n.protocol,s=e.hostname===document.domain&&e.port===n.port;return o.sameOrigin=a&&(!e.hostname||s),"/"===o.pathname&&(r[t]=o),o}},{}],19:[function(t,e,n){function r(t,e){var n=t.responseType;return"json"===n&&null!==e?e:"arraybuffer"===n||"blob"===n||"json"===n?o(t.response):"text"===n||""===n||void 0===n?o(t.responseText):void 0}var o=t(22);e.exports=r},{}],20:[function(t,e,n){function r(){}function o(t,e,n,r){return function(){return u.recordSupportability("API/"+e+"/called"),i(t+e,[f.now()].concat(s(arguments)),n?null:this,r),n?void 0:this}}var i=t("handle"),a=t(32),s=t(33),c=t("ee").get("tracer"),f=t("loader"),u=t(25),d=NREUM;"undefined"==typeof window.newrelic&&(newrelic=d);var p=["setPageViewName","setCustomAttribute","setErrorHandler","finished","addToTrace","inlineHit","addRelease"],l="api-",h=l+"ixn-";a(p,function(t,e){d[e]=o(l,e,!0,"api")}),d.addPageAction=o(l,"addPageAction",!0),d.setCurrentRouteName=o(l,"routeName",!0),e.exports=newrelic,d.interaction=function(){return(new r).get()};var m=r.prototype={createTracer:function(t,e){var n={},r=this,o="function"==typeof e;return i(h+"tracer",[f.now(),t,n],r),function(){if(c.emit((o?"":"no-")+"fn-start",[f.now(),r,o],n),o)try{return e.apply(this,arguments)}catch(t){throw c.emit("fn-err",[arguments,this,t],n),t}finally{c.emit("fn-end",[f.now()],n)}}}};a("actionText,setName,setAttribute,save,ignore,onEnd,getContext,end,get".split(","),function(t,e){m[e]=o(h,e)}),newrelic.noticeError=function(t,e){"string"==typeof t&&(t=new Error(t)),u.recordSupportability("API/noticeError/called"),i("err",[t,f.now(),!1,e])}},{}],21:[function(t,e,n){function r(t){if(NREUM.init){for(var e=NREUM.init,n=t.split("."),r=0;r<n.length-1;r++)if(e=e[n[r]],"object"!=typeof e)return;return e=e[n[n.length-1]]}}e.exports={getConfiguration:r}},{}],22:[function(t,e,n){e.exports=function(t){if("string"==typeof t&&t.length)return t.length;if("object"==typeof t){if("undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer&&t.byteLength)return t.byteLength;if("undefined"!=typeof Blob&&t instanceof Blob&&t.size)return t.size;if(!("undefined"!=typeof FormData&&t instanceof FormData))try{return JSON.stringify(t).length}catch(e){return}}}},{}],23:[function(t,e,n){var r=!1;try{var o=Object.defineProperty({},"passive",{get:function(){r=!0}});window.addEventListener("testPassive",null,o),window.removeEventListener("testPassive",null,o)}catch(i){}e.exports=function(t){return r?{passive:!0,capture:!!t}:!!t}},{}],24:[function(t,e,n){var r=0,o=navigator.userAgent.match(/Firefox[\/\s](\d+\.\d+)/);o&&(r=+o[1]),e.exports=r},{}],25:[function(t,e,n){function r(t,e){var n=[a,t,{name:t},e];return i("storeMetric",n,null,"api"),n}function o(t,e){var n=[s,t,{name:t},e];return i("storeEventMetrics",n,null,"api"),n}var i=t("handle"),a="sm",s="cm";e.exports={constants:{SUPPORTABILITY_METRIC:a,CUSTOM_METRIC:s},recordSupportability:r,recordCustom:o}},{}],26:[function(t,e,n){function r(){return s.exists&&performance.now?Math.round(performance.now()):(i=Math.max((new Date).getTime(),i))-a}function o(){return i}var i=(new Date).getTime(),a=i,s=t(34);e.exports=r,e.exports.offset=a,e.exports.getLastTimestamp=o},{}],27:[function(t,e,n){function r(t){return!(!t||!t.protocol||"file:"===t.protocol)}e.exports=r},{}],28:[function(t,e,n){function r(t,e){var n=t.getEntries();n.forEach(function(t){"first-paint"===t.name?p("timing",["fp",Math.floor(t.startTime)]):"first-contentful-paint"===t.name&&p("timing",["fcp",Math.floor(t.startTime)])})}function o(t,e){var n=t.getEntries();if(n.length>0){var r=n[n.length-1];if(c&&c<r.startTime)return;p("lcp",[r])}}function i(t){t.getEntries().forEach(function(t){t.hadRecentInput||p("cls",[t])})}function a(t){if(t instanceof v&&!g){var e=Math.round(t.timeStamp),n={type:t.type};e<=l.now()?n.fid=l.now()-e:e>l.offset&&e<=Date.now()?(e-=l.offset,n.fid=l.now()-e):e=l.now(),g=!0,p("timing",["fi",e,n])}}function s(t){"hidden"===t&&(c=l.now(),p("pageHide",[c]))}if(!("init"in NREUM&&"page_view_timing"in NREUM.init&&"enabled"in NREUM.init.page_view_timing&&NREUM.init.page_view_timing.enabled===!1)){var c,f,u,d,p=t("handle"),l=t("loader"),h=t(31),m=t(23),v=NREUM.o.EV;if("PerformanceObserver"in window&&"function"==typeof window.PerformanceObserver){f=new PerformanceObserver(r);try{f.observe({entryTypes:["paint"]})}catch(w){}u=new PerformanceObserver(o);try{u.observe({entryTypes:["largest-contentful-paint"]})}catch(w){}d=new PerformanceObserver(i);try{d.observe({type:"layout-shift",buffered:!0})}catch(w){}}if("addEventListener"in document){var g=!1,y=["click","keydown","mousedown","pointerdown","touchstart"];y.forEach(function(t){document.addEventListener(t,a,m(!1))})}h(s)}},{}],29:[function(t,e,n){function r(){function t(){return e?15&e[n++]:16*Math.random()|0}var e=null,n=0,r=window.crypto||window.msCrypto;r&&r.getRandomValues&&(e=r.getRandomValues(new Uint8Array(31)));for(var o,i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",a="",s=0;s<i.length;s++)o=i[s],"x"===o?a+=t().toString(16):"y"===o?(o=3&t()|8,a+=o.toString(16)):a+=o;return a}function o(){return a(16)}function i(){return a(32)}function a(t){function e(){return n?15&n[r++]:16*Math.random()|0}var n=null,r=0,o=window.crypto||window.msCrypto;o&&o.getRandomValues&&Uint8Array&&(n=o.getRandomValues(new Uint8Array(31)));for(var i=[],a=0;a<t;a++)i.push(e().toString(16));return i.join("")}e.exports={generateUuid:r,generateSpanId:o,generateTraceId:i}},{}],30:[function(t,e,n){function r(t,e){if(!o)return!1;if(t!==o)return!1;if(!e)return!0;if(!i)return!1;for(var n=i.split("."),r=e.split("."),a=0;a<r.length;a++)if(r[a]!==n[a])return!1;return!0}var o=null,i=null,a=/Version\/(\S+)\s+Safari/;if(navigator.userAgent){var s=navigator.userAgent,c=s.match(a);c&&s.indexOf("Chrome")===-1&&s.indexOf("Chromium")===-1&&(o="Safari",i=c[1])}e.exports={agent:o,version:i,match:r}},{}],31:[function(t,e,n){function r(t){function e(){t(s&&document[s]?document[s]:document[i]?"hidden":"visible")}"addEventListener"in document&&a&&document.addEventListener(a,e,o(!1))}var o=t(23);e.exports=r;var i,a,s;"undefined"!=typeof document.hidden?(i="hidden",a="visibilitychange",s="visibilityState"):"undefined"!=typeof document.msHidden?(i="msHidden",a="msvisibilitychange"):"undefined"!=typeof document.webkitHidden&&(i="webkitHidden",a="webkitvisibilitychange",s="webkitVisibilityState")},{}],32:[function(t,e,n){function r(t,e){var n=[],r="",i=0;for(r in t)o.call(t,r)&&(n[i]=e(r,t[r]),i+=1);return n}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],33:[function(t,e,n){function r(t,e,n){e||(e=0),"undefined"==typeof n&&(n=t?t.length:0);for(var r=-1,o=n-e||0,i=Array(o<0?0:o);++r<o;)i[r]=t[e+r];return i}e.exports=r},{}],34:[function(t,e,n){e.exports={exists:"undefined"!=typeof window.performance&&window.performance.timing&&"undefined"!=typeof window.performance.timing.navigationStart}},{}],ee:[function(t,e,n){function r(){}function o(t){function e(t){return t&&t instanceof r?t:t?f(t,c,a):a()}function n(n,r,o,i,a){if(a!==!1&&(a=!0),!l.aborted||i){t&&a&&t(n,r,o);for(var s=e(o),c=m(n),f=c.length,u=0;u<f;u++)c[u].apply(s,r);var p=d[y[n]];return p&&p.push([x,n,r,s]),s}}function i(t,e){g[t]=m(t).concat(e)}function h(t,e){var n=g[t];if(n)for(var r=0;r<n.length;r++)n[r]===e&&n.splice(r,1)}function m(t){return g[t]||[]}function v(t){return p[t]=p[t]||o(n)}function w(t,e){l.aborted||u(t,function(t,n){e=e||"feature",y[n]=e,e in d||(d[e]=[])})}var g={},y={},x={on:i,addEventListener:i,removeEventListener:h,emit:n,get:v,listeners:m,context:e,buffer:w,abort:s,aborted:!1};return x}function i(t){return f(t,c,a)}function a(){return new r}function s(){(d.api||d.feature)&&(l.aborted=!0,d=l.backlog={})}var c="nr@context",f=t("gos"),u=t(32),d={},p={},l=e.exports=o();e.exports.getOrSetContext=i,l.backlog=d},{}],gos:[function(t,e,n){function r(t,e,n){if(o.call(t,e))return t[e];var r=n();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!1}),r}catch(i){}return t[e]=r,r}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],handle:[function(t,e,n){function r(t,e,n,r){o.buffer([t],r),o.emit(t,e,n)}var o=t("ee").get("handle");e.exports=r,r.ee=o},{}],id:[function(t,e,n){function r(t){var e=typeof t;return!t||"object"!==e&&"function"!==e?-1:t===window?0:a(t,i,function(){return o++})}var o=1,i="nr@id",a=t("gos");e.exports=r},{}],loader:[function(t,e,n){function r(){if(!P++){var t=T.info=NREUM.info,e=v.getElementsByTagName("script")[0];if(setTimeout(f.abort,3e4),!(t&&t.licenseKey&&t.applicationID&&e))return f.abort();c(R,function(e,n){t[e]||(t[e]=n)});var n=a();s("mark",["onload",n+T.offset],null,"api"),s("timing",["load",n]);var r=v.createElement("script");0===t.agent.indexOf("http://")||0===t.agent.indexOf("https://")?r.src=t.agent:r.src=h+"://"+t.agent,e.parentNode.insertBefore(r,e)}}function o(){"complete"===v.readyState&&i()}function i(){s("mark",["domContent",a()+T.offset],null,"api")}var a=t(26),s=t("handle"),c=t(32),f=t("ee"),u=t(30),d=t(27),p=t(21),l=t(23),h=p.getConfiguration("ssl")===!1?"http":"https",m=window,v=m.document,w="addEventListener",g="attachEvent",y=m.XMLHttpRequest,x=y&&y.prototype,b=!d(m.location);NREUM.o={ST:setTimeout,SI:m.setImmediate,CT:clearTimeout,XHR:y,REQ:m.Request,EV:m.Event,PR:m.Promise,MO:m.MutationObserver};var E=""+location,R={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",agent:"js-agent.newrelic.com/nr-spa-1212.min.js"},O=y&&x&&x[w]&&!/CriOS/.test(navigator.userAgent),T=e.exports={offset:a.getLastTimestamp(),now:a,origin:E,features:{},xhrWrappable:O,userAgent:u,disabled:b};if(!b){t(20),t(28),v[w]?(v[w]("DOMContentLoaded",i,l(!1)),m[w]("load",r,l(!1))):(v[g]("onreadystatechange",o),m[g]("onload",r)),s("mark",["firstbyte",a.getLastTimestamp()],null,"api");var P=0}},{}],"wrap-function":[function(t,e,n){function r(t,e){function n(e,n,r,c,f){function nrWrapper(){var i,a,u,p;try{a=this,i=d(arguments),u="function"==typeof r?r(i,a):r||{}}catch(l){o([l,"",[i,a,c],u],t)}s(n+"start",[i,a,c],u,f);try{return p=e.apply(a,i)}catch(h){throw s(n+"err",[i,a,h],u,f),h}finally{s(n+"end",[i,a,p],u,f)}}return a(e)?e:(n||(n=""),nrWrapper[p]=e,i(e,nrWrapper,t),nrWrapper)}function r(t,e,r,o,i){r||(r="");var s,c,f,u="-"===r.charAt(0);for(f=0;f<e.length;f++)c=e[f],s=t[c],a(s)||(t[c]=n(s,u?c+r:r,o,c,i))}function s(n,r,i,a){if(!h||e){var s=h;h=!0;try{t.emit(n,r,i,e,a)}catch(c){o([c,n,r,i],t)}h=s}}return t||(t=u),n.inPlace=r,n.flag=p,n}function o(t,e){e||(e=u);try{e.emit("internal-error",t)}catch(n){}}function i(t,e,n){if(Object.defineProperty&&Object.keys)try{var r=Object.keys(t);return r.forEach(function(n){Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){return t[n]=e,e}})}),e}catch(i){o([i],n)}for(var a in t)l.call(t,a)&&(e[a]=t[a]);return e}function a(t){return!(t&&t instanceof Function&&t.apply&&!t[p])}function s(t,e){var n=e(t);return n[p]=t,i(t,n,u),n}function c(t,e,n){var r=t[e];t[e]=s(r,n)}function f(){for(var t=arguments.length,e=new Array(t),n=0;n<t;++n)e[n]=arguments[n];return e}var u=t("ee"),d=t(33),p="nr@original",l=Object.prototype.hasOwnProperty,h=!1;e.exports=r,e.exports.wrapFunction=s,e.exports.wrapInPlace=c,e.exports.argsToArray=f},{}]},{},["loader",2,17,5,3,4]); ;NREUM.loader_config={accountID:"804283",trustKey:"804283",agentID:"402703674",licenseKey:"cf99e8d2a3",applicationID:"402703674"} ;NREUM.info={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",licenseKey:"cf99e8d2a3", // Modified this value from the generated script, to pass prod vs dev applicationID: window.location.hostname.includes('journals.plos.org') ? "402703674" : "402694889", sa:1} </script> <!-- End New Relic --> <header> <div id="topslot" class="head-top"> <a id="skip-to-content" tabindex="0" class="button" href="#main-content"> Skip to main content </a> <div class="center"> <div class="title">Advertisement</div> <!-- DoubleClick Ad Zone --> <div class='advertisement' id='div-gpt-ad-1458247671871-0' style='width:728px; height:90px;'> <script type='text/javascript'> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1458247671871-0'); }); </script> </div> </div> </div> <div id="user" class="nav" data-user-management-url="https://community.plos.org"> </div> <div id="pagehdr"> <nav class="nav-main"> <h1 class="logo"> <a href="/plosbiology/.">PLOS Biology</a> </h1> <section class="top-bar-section"> <ul class="nav-elements"> <li class="menu-section-header has-dropdown " id="browse"> <span class="menu-section-header-title"> Browse </span> <ul class="menu-section dropdown " id="browse-dropdown-list"> <li> <a href="/plosbiology/issue" >Current Issue</a> </li> <li> <a href="/plosbiology/volume" >Journal Archive</a> </li> <li> <a href="/plosbiology/s/collections" >Collections</a> </li> <li> <a href="/plosbiology/s/find-and-read-articles" >Find and Read Articles</a> </li> </ul> </li> <li class="multi-col-parent menu-section-header has-dropdown" id="publish"> Publish <div class="dropdown mega "> <ul class="multi-col" id="publish-dropdown-list"> <li class="menu-section-header " id="submissions"> <span class="menu-section-header-title"> Submissions </span> <ul class="menu-section " id="submissions-dropdown-list"> <li> <a href="/plosbiology/s/submission-guidelines" >Submission Guidelines</a> </li> <li> <a href="/plosbiology/s/figures" >Figures</a> </li> <li> <a href="/plosbiology/s/tables" >Tables</a> </li> <li> <a href="/plosbiology/s/supporting-information" >Supporting Information</a> </li> <li> <a href="/plosbiology/s/latex" >LaTeX</a> </li> <li> <a href="/plosbiology/s/what-we-publish" >What We Publish</a> </li> <li> <a href="/plosbiology/s/preprints" >Preprints</a> </li> <li> <a href="/plosbiology/s/revising-your-manuscript" >Revising Your Manuscript</a> </li> <li> <a href="/plosbiology/s/submit-now" >Submit Now</a> </li> </ul> </li> <li class="menu-section-header " id="policies"> <span class="menu-section-header-title"> Policies </span> <ul class="menu-section " id="policies-dropdown-list"> <li> <a href="/plosbiology/s/best-practices-in-research-reporting" >Best Practices in Research Reporting</a> </li> <li> <a href="/plosbiology/s/human-subjects-research" >Human Subjects Research</a> </li> <li> <a href="/plosbiology/s/animal-research" >Animal Research</a> </li> <li> <a href="/plosbiology/s/competing-interests" >Competing Interests</a> </li> <li> <a href="/plosbiology/s/disclosure-of-funding-sources" >Disclosure of Funding Sources</a> </li> <li> <a href="/plosbiology/s/licenses-and-copyright" >Licenses and Copyright</a> </li> <li> <a href="/plosbiology/s/data-availability" >Data Availability</a> </li> <li> <a href="/plosbiology/s/complementary-research" >Complementary Research</a> </li> <li> <a href="/plosbiology/s/materials-software-and-code-sharing" >Materials, Software and Code Sharing</a> </li> <li> <a href="/plosbiology/s/ethical-publishing-practice" >Ethical Publishing Practice</a> </li> <li> <a href="/plosbiology/s/authorship" >Authorship</a> </li> <li> <a href="/plosbiology/s/corrections-expressions-of-concern-and-retractions" >Corrections, Expressions of Concern, and Retractions</a> </li> </ul> </li> <li class="menu-section-header " id="manuscript-review-and-publication"> <span class="menu-section-header-title"> Manuscript Review and Publication </span> <ul class="menu-section " id="manuscript-review-and-publication-dropdown-list"> <li> <a href="/plosbiology/s/editorial-and-peer-review-process" >Editorial and Peer Review Process</a> </li> <li> <a href="/plosbiology/s/reviewer-guidelines" >Guidelines for Reviewers</a> </li> <li> <a href="/plosbiology/s/accepted-manuscripts" >Accepted Manuscripts</a> </li> <li> <a href="/plosbiology/s/comments" >Comments</a> </li> </ul> </li> </ul> <div class="calloutcontainer"> <h3 class="callout-headline">Submit Your Manuscript</h3> <div class="action-contain"> <p class="callout-content"> <em>PLOS Biology</em> provides an Open Access platform to showcase your best research and commentary across all areas of biological science. </p> <p class="button-contain special"> <a class="button button-default" href="/plosbiology/s/submit-now"> Submit Now </a> </p> </div> <!-- opens in siteMenuCalloutDescription --> </div> </div> </li> <li class="menu-section-header has-dropdown " id="about"> <span class="menu-section-header-title"> About </span> <ul class="menu-section dropdown " id="about-dropdown-list"> <li> <a href="/plosbiology/static/publish" >Why Publish with PLOS Biology</a> </li> <li> <a href="/plosbiology/s/journal-information" >Journal Information</a> </li> <li> <a href="/plosbiology/s/staff-editors" >Staff Editors</a> </li> <li> <a href="/plosbiology/s/editorial-board" >Editorial Board</a> </li> <li> <a href="/plosbiology/s/publishing-information" >Publishing Information</a> </li> <li> <a href="https://plos.org/publication-fees" >Publication Fees</a> </li> <li> <a href="https://plos.org/press-and-media" >Press and Media</a> </li> <li> <a href="/plosbiology/s/contact" >Contact</a> </li> </ul> </li> <script src="/resource/js/vendor/jquery.hoverIntent.js" type="text/javascript"></script> <script src="/resource/js/components/menu_drop.js" type="text/javascript"></script> <script src="/resource/js/components/hover_delay.js" type="text/javascript"></script> <li id="navsearch" class="head-search"> <form name="searchForm" action="/plosbiology/search" method="get"> <fieldset> <legend>Search</legend> <label for="search">Search</label> <div class="search-contain"> <input id="search" type="text" name="q" placeholder="SEARCH" required/> <button id="headerSearchButton" type="submit" aria-label="Submit search"> <i title="Submit search" class="search-icon"></i> </button> </div> </fieldset> <input type="hidden" name="filterJournals" value="PLoSBiology"/> </form> <a id="advSearch" href="/plosbiology/search"> advanced search </a> <script src="/resource/js/components/placeholder_style.js" type="text/javascript"></script> </li> </ul> </section> </nav> </div> </header> <main id="main-content"> <div class="set-grid"> <header class="title-block"> <script src="/resource/js/components/signposts.js" type="text/javascript"></script> <ul id="almSignposts" class="signposts"> <li id="loadingMetrics"> <p>Loading metrics</p> </li> </ul> <script type="text/template" id="signpostsGeneralErrorTemplate"> <li id="metricsError">Article metrics are unavailable at this time. Please try again later.</li> </script> <script type="text/template" id="signpostsNewArticleErrorTemplate"> <li></li><li></li><li id="tooSoon">Article metrics are unavailable for recently published articles.</li> </script> <script type="text/template" id="signpostsTemplate"> <li id="almSaves"> <%= s.numberFormat(saveCount, 0) %> <div class="tools" data-js-tooltip-hover="trigger"> <a class="metric-term" href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#savedHeader">Save</a> <p class="saves-tip" data-js-tooltip-hover="target"><a href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#savedHeader">Total Mendeley and Citeulike bookmarks.</a></p> </div> </li> <li id="almCitations"> <%= s.numberFormat(citationCount, 0) %> <div class="tools" data-js-tooltip-hover="trigger"> <a class="metric-term" href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#citedHeader">Citation</a> <p class="citations-tip" data-js-tooltip-hover="target"><a href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#citedHeader">Paper's citation count computed by Dimensions.</a></p> </div> </li> <li id="almViews"> <%= s.numberFormat(viewCount, 0) %> <div class="tools" data-js-tooltip-hover="trigger"> <a class="metric-term" href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#viewedHeader">View</a> <p class="views-tip" data-js-tooltip-hover="target"><a href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#viewedHeader">PLOS views and downloads.</a></p> </div> </li> <li id="almShares"> <%= s.numberFormat(shareCount, 0) %> <div class="tools" data-js-tooltip-hover="trigger"> <a class="metric-term" href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#discussedHeader">Share</a> <p class="shares-tip" data-js-tooltip-hover="target"><a href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970#discussedHeader">Sum of Facebook, Twitter, Reddit and Wikipedia activity.</a></p> </div> </li> </script> <div class="article-meta"> <div class="classifications"> <p class="license-short" id="licenseShort">Open Access</p> <p class="peer-reviewed" id="peerReviewed">Peer-reviewed</p> <div class="article-type" data-js-tooltip-hover="trigger"> <p class="article-type-tooltip" id="artType">Methods and Resources</p> <div class="type-desc" data-js-tooltip-hover="target"> <p>Methods and Resources report novel methods, substantial improvements to current methodologies, or informational datasets. </p> <p><a href="/plosbiology/s/journal-information" class="type-seeall"> See Journal Information » </a></p> </div> </div> </div> </div> <div class="article-title-etc"> <div class="title-authors"> <h1 id="artTitle"><?xml version="1.0" encoding="UTF-8"?>CellProfiler 3.0: Next-generation image processing for biology</h1> <ul class="author-list clearfix" data-js-tooltip="tooltip_container" id="author-list"> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="0" class="author-name" > Claire McQuin <span class="contribute"> </span>,</a> <div id="author-meta-0" class="author-info" data-js-tooltip="tooltip_target"> <p> <span class="contribute"> </span> Contributed equally to this work with: Claire McQuin, Allen Goodman, Vasiliy Chernyshev, Lee Kamentsky, Beth A. Cimini, Kyle W. Karhohs </p> <p class="roles" id="authRoles"> <span class="type">Roles</span> Conceptualization, Formal analysis, Software, Writing – original draft, Writing – review & editing </p> <p id="authAffiliations-0"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose0"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="1" class="author-name" > Allen Goodman <span class="contribute"> </span>,</a> <div id="author-meta-1" class="author-info" data-js-tooltip="tooltip_target"> <p> <span class="contribute"> </span> Contributed equally to this work with: Claire McQuin, Allen Goodman, Vasiliy Chernyshev, Lee Kamentsky, Beth A. Cimini, Kyle W. Karhohs </p> <p class="roles" id="authRoles"> <span class="type">Roles</span> Conceptualization, Investigation, Software </p> <p id="authAffiliations-1"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose1"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="2" class="author-name" > Vasiliy Chernyshev <span class="contribute"> </span>,</a> <div id="author-meta-2" class="author-info" data-js-tooltip="tooltip_target"> <p> <span class="contribute"> </span> Contributed equally to this work with: Claire McQuin, Allen Goodman, Vasiliy Chernyshev, Lee Kamentsky, Beth A. Cimini, Kyle W. Karhohs </p> <p class="roles" id="authRoles"> <span class="type">Roles</span> Data curation, Investigation, Methodology, Software, Validation, Visualization, Writing – review & editing </p> <p id="authAffiliations-2"><span class="type">Affiliations</span> Skolkovo Institute of Science and Technology, Skolkovo, Moscow Region, Russia, Moscow Institute of Physics and Technology, Dolgoprudny, Moscow Region, Russia </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose2"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="3" class="author-name" > Lee Kamentsky <span class="contribute"> </span>,</a> <div id="author-meta-3" class="author-info" data-js-tooltip="tooltip_target"> <p> <span class="contribute"> </span> Contributed equally to this work with: Claire McQuin, Allen Goodman, Vasiliy Chernyshev, Lee Kamentsky, Beth A. Cimini, Kyle W. Karhohs </p> <p class="roles" id="authRoles"> <span class="type">Roles</span> Conceptualization, Software </p> <p id="authAffiliations-3"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose3"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="4" class="author-name" > Beth A. Cimini <span class="contribute"> </span>,</a> <div id="author-meta-4" class="author-info" data-js-tooltip="tooltip_target"> <p> <span class="contribute"> </span> Contributed equally to this work with: Claire McQuin, Allen Goodman, Vasiliy Chernyshev, Lee Kamentsky, Beth A. Cimini, Kyle W. Karhohs </p> <p class="roles" id="authRoles"> <span class="type">Roles</span> Conceptualization, Investigation, Methodology, Project administration, Software, Validation, Writing – review & editing </p> <p id="authAffiliations-4"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose4"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="5" class="author-name" > Kyle W. Karhohs <span class="contribute"> </span>,</a> <div id="author-meta-5" class="author-info" data-js-tooltip="tooltip_target"> <p> <span class="contribute"> </span> Contributed equally to this work with: Claire McQuin, Allen Goodman, Vasiliy Chernyshev, Lee Kamentsky, Beth A. Cimini, Kyle W. Karhohs </p> <p class="roles" id="authRoles"> <span class="type">Roles</span> Investigation, Methodology, Software </p> <p id="authAffiliations-5"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose5"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="6" class="author-name" > Minh Doan,</a> <div id="author-meta-6" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Methodology, Software, Writing – original draft, Writing – review & editing </p> <p id="authAffiliations-6"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose6"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="7" class="author-name" > Liya Ding,</a> <div id="author-meta-7" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Data curation, Methodology, Software, Validation, Writing – review & editing </p> <p id="authAffiliations-7"><span class="type">Affiliation</span> Allen Institute for Cell Science, Seattle, Washington, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose7"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="8" class="author-name" > Susanne M. Rafelski,</a> <div id="author-meta-8" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Conceptualization, Methodology, Project administration, Resources, Supervision, Writing – review & editing </p> <p id="authAffiliations-8"><span class="type">Affiliation</span> Allen Institute for Cell Science, Seattle, Washington, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose8"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="9" class="author-name" > Derek Thirstrup,</a> <div id="author-meta-9" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Data curation, Methodology, Software, Validation, Writing – review & editing </p> <p id="authAffiliations-9"><span class="type">Affiliation</span> Allen Institute for Cell Science, Seattle, Washington, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose9"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="10" class="author-name" > Winfried Wiegraebe,</a> <div id="author-meta-10" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Conceptualization, Methodology, Resources, Supervision </p> <p id="authAffiliations-10"><span class="type">Affiliation</span> Allen Institute for Cell Science, Seattle, Washington, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose10"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="11" class="author-name" > Shantanu Singh,</a> <div id="author-meta-11" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Resources, Software, Writing – review & editing </p> <p id="authAffiliations-11"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose11"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="12" class="author-name" > Tim Becker,</a> <div id="author-meta-12" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Investigation, Software, Visualization, Writing – review & editing </p> <p id="authAffiliations-12"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose12"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="13" class="author-name" > Juan C. Caicedo,</a> <div id="author-meta-13" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Software, Writing – review & editing </p> <p id="authAffiliations-13"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose13"> ⨯ </a> </div> </li> <li data-js-tooltip="tooltip_trigger" > <a data-author-id="14" class="author-name" > Anne E. Carpenter <span class="email"> </span></a> <div id="author-meta-14" class="author-info" data-js-tooltip="tooltip_target"> <p class="roles" id="authRoles"> <span class="type">Roles</span> Conceptualization, Funding acquisition, Project administration, Resources, Supervision, Writing – original draft, Writing – review & editing </p> <p id="authCorresponding-14"> <span class="email">* E-mail:</span> <a href="mailto:anne@broadinstitute.org">anne@broadinstitute.org</a></p> <p id="authAffiliations-14"><span class="type">Affiliation</span> Imaging Platform, Broad Institute of Harvard and MIT, Cambridge, Massachusetts, United States of America </p> <a data-js-tooltip="tooltip_close" class="close" id="tooltipClose14"> ⨯ </a> </div> </li> </ul> <script src="/resource/js/components/tooltip.js" type="text/javascript"></script> </div> <div id="floatTitleTop" data-js-floater="title_author" class="float-title" role="presentation"> <div class="set-grid"> <div class="float-title-inner"> <h1><?xml version="1.0" encoding="UTF-8"?>CellProfiler 3.0: Next-generation image processing for biology</h1> <ul id="floatAuthorList" data-js-floater="floated_authors"> <li data-float-index="1">Claire McQuin, </li> <li data-float-index="2">Allen Goodman, </li> <li data-float-index="3">Vasiliy Chernyshev, </li> <li data-float-index="4">Lee Kamentsky, </li> <li data-float-index="5">Beth A. Cimini, </li> <li data-float-index="6">Kyle W. Karhohs, </li> <li data-float-index="7">Minh Doan, </li> <li data-float-index="8">Liya Ding, </li> <li data-float-index="9">Susanne M. Rafelski, </li> <li data-float-index="10">Derek Thirstrup </ul> </div> <div class="logo-close" id="titleTopCloser"> <img src="/resource/img/logo-plos.png" style="height: 2em" alt="PLOS" /> <div class="close-floater" title="close">x</div> </div> </div> </div> <ul class="date-doi"> <li id="artPubDate">Published: July 3, 2018</li> <li id="artDoi"> <a href="https://doi.org/10.1371/journal.pbio.2005970">https://doi.org/10.1371/journal.pbio.2005970</a> </li> <li class="flex-spacer"></li> </ul> </div> <div> </div> </header> <section class="article-body"> <ul class="article-tabs"> <li class="tab-title active" id="tabArticle"> <a href="/plosbiology/article?id=10.1371/journal.pbio.2005970" class="article-tab-1">Article</a> </li> <li class="tab-title " id="tabAuthors"> <a href="/plosbiology/article/authors?id=10.1371/journal.pbio.2005970" class="article-tab-2">Authors</a> </li> <li class="tab-title " id="tabMetrics"> <a href="/plosbiology/article/metrics?id=10.1371/journal.pbio.2005970" class="article-tab-3">Metrics</a> </li> <li class="tab-title " id="tabComments"> <a href="/plosbiology/article/comments?id=10.1371/journal.pbio.2005970" class="article-tab-4">Comments</a> </li> <li class="tab-title" id="tabRelated"> <a class="article-tab-5" id="tabRelated-link">Media Coverage</a> <script>$(document).ready(function() { $.getMediaLink("10.1371/journal.pbio.2005970").then(function (url) { $("#tabRelated-link").attr("href", url) } ) })</script> </li> </ul> <div class="article-container"> <div id="nav-article"> <ul class="nav-secondary"> <li class="nav-comments" id="nav-comments"> <a href="article/comments?id=10.1371/journal.pbio.2005970">Reader Comments</a> </li> <li id="nav-figures"><a href="#" data-doi="10.1371/journal.pbio.2005970">Figures</a></li> </ul> <div id="nav-data-linking" data-data-url="https://github.com/carpenterlab/2018_mcquin_PLOSBio"> </div> </div> <script src="/resource/js/components/scroll.js" type="text/javascript"></script> <script src="/resource/js/components/nav_builder.js" type="text/javascript"></script> <script src="/resource/js/components/floating_nav.js" type="text/javascript"></script> <div id="figure-lightbox-container"></div> <script id="figure-lightbox-template" type="text/template"> <div id="figure-lightbox" class="reveal-modal full" data-reveal aria-hidden="true" role="dialog"> <div class="lb-header"> <h1 id="lb-title"><%= articleTitle %></h1> <div id="lb-authors"> <span>Claire McQuin</span> <span>Allen Goodman</span> <a class="more-authors" href="/plosbiology/article/authors?id=10.1371/journal.pbio.2005970">...</a> <span>Anne E. Carpenter</span> </div> <div class="lb-close" title="close"> </div> </div> <div class="img-container"> <div class="loader"> <i class="fa-spinner"></i> </div> <img class="main-lightbox-image" src=""/> <aside id="figures-list"> <% figureList.each(function (ix, figure) { %> <div class="change-img" data-doi="<%= figure.getAttribute('data-doi') %>"> <img class="aside-figure" src="/plosbiology/article/figure/image?size=inline&id=<%= figure.getAttribute('data-doi') %>" /> </div> <% }) %> <div class="dummy-figure"> </div> </aside> </div> <div id="lightbox-footer"> <div id="btns-container" class="lightbox-row <% if(figureList.length <= 1) { print('one-figure-only') } %>"> <div class="fig-btns-container reset-zoom-wrapper left"> <span class="fig-btn reset-zoom-btn">Reset zoom</span> </div> <div class="zoom-slider-container"> <div class="range-slider-container"> <span id="lb-zoom-min"></span> <div class="range-slider round" data-slider data-options="start: 20; end: 200; initial: 20;"> <span class="range-slider-handle" role="slider" tabindex="0"></span> <span class="range-slider-active-segment"></span> <input type="hidden"> </div> <span id="lb-zoom-max"></span> </div> </div> <% if(figureList.length > 1) { %> <div class="fig-btns-container"> <span class="fig-btn all-fig-btn"><i class="icon icon-all"></i> All Figures</span> <span class="fig-btn next-fig-btn"><i class="icon icon-next"></i> Next</span> <span class="fig-btn prev-fig-btn"><i class="icon icon-prev"></i> Previous</span> </div> <% } %> </div> <div id="image-context"> </div> </div> </div> </script> <script id="image-context-template" type="text/template"> <div class="footer-text"> <div id="figure-description-wrapper"> <div id="view-more-wrapper" style="<% descriptionExpanded? print('display:none;') : '' %>"> <span id="figure-title"><%= title %></span> <p id="figure-description"> <%= description %> </p> <span id="view-more">show more<i class="icon-arrow-right"></i></span> </div> <div id="view-less-wrapper" style="<% descriptionExpanded? print('display:inline-block;') : '' %>" > <span id="figure-title"><%= title %></span> <p id="full-figure-description"> <%= description %> <span id="view-less">show less<i class="icon-arrow-left"></i></span> </p> </div> </div> </div> <div id="show-context-container"> <a class="btn show-context" href="<%= showInContext(strippedDoi) %>">Show in Context</a> </div> <div id="download-buttons"> <h3>Download:</h3> <div class="item"> <a href="/plosbiology/article/figure/image?size=original&download=&id=<%= doi %>" title="original image"> <span class="download-btn">TIFF</span> </a> <span class="file-size"><%= fileSizes.original %></span> </div> <div class="item"> <a href="/plosbiology/article/figure/image?size=large&download=&id=<%= doi %>" title="large image"> <span class="download-btn">PNG</span> </a> <span class="file-size"><%= fileSizes.large %></span> </div> <div class="item"> <a href="/plosbiology/article/figure/powerpoint?id=<%= doi %>" title="PowerPoint slide"> <span class="download-btn">PPT</span> </a> </div> </div> </script> <div class="article-content"> <div id="figure-carousel-section"> <h2>Figures</h2> <div id="figure-carousel"> <div class="carousel-wrapper"> <div class="slider"> <div class="carousel-item lightbox-figure" data-doi="10.1371/journal.pbio.2005970.g001"> <img src="/plosbiology/article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g001" loading="lazy" alt="Fig 1" /> </div> <div class="carousel-item lightbox-figure" data-doi="10.1371/journal.pbio.2005970.g002"> <img src="/plosbiology/article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g002" loading="lazy" alt="Fig 2" /> </div> <div class="carousel-item lightbox-figure" data-doi="10.1371/journal.pbio.2005970.g003"> <img src="/plosbiology/article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g003" loading="lazy" alt="Fig 3" /> </div> <div class="carousel-item lightbox-figure" data-doi="10.1371/journal.pbio.2005970.g004"> <img src="/plosbiology/article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g004" loading="lazy" alt="Fig 4" /> </div> </div> </div> <div class="carousel-control"> <span class="button previous"></span> <span class="button next"></span> </div> <div class="carousel-page-buttons"> </div> </div> </div> <script src="/resource/js/vendor/jquery.touchswipe.js" type="text/javascript"></script> <script src="/resource/js/components/figure_carousel.js" type="text/javascript"></script> <script src="/resource/js/vendor/jquery.dotdotdot.js" type="text/javascript"></script> <div class="article-text" id="artText"> <div xmlns:plos="http://plos.org" class="abstract toc-section abstract-type-"><a id="abstract0" name="abstract0" data-toc="abstract0" class="link-target" title="Abstract"></a><h2>Abstract</h2><div class="abstract-content"><a id="article1.front1.article-meta1.abstract1.p1" name="article1.front1.article-meta1.abstract1.p1" class="link-target"></a><p>CellProfiler has enabled the scientific research community to create flexible, modular image analysis pipelines since its release in 2005. Here, we describe CellProfiler 3.0, a new version of the software supporting both whole-volume and plane-wise analysis of three-dimensional (3D) image stacks, increasingly common in biomedical research. CellProfiler’s infrastructure is greatly improved, and we provide a protocol for cloud-based, large-scale image processing. New plugins enable running pretrained deep learning models on images. Designed by and for biologists, CellProfiler equips researchers with powerful computational tools via a well-documented user interface, empowering biologists in all fields to create quantitative, reproducible image analysis workflows.</p> </div></div><div xmlns:plos="http://plos.org" class="abstract toc-section abstract-type-summary"><a id="abstract1" name="abstract1" data-toc="abstract1" class="link-target" title="Author summary"></a> <h2>Author summary</h2> <div class="abstract-content"><a id="article1.front1.article-meta1.abstract2.p1" name="article1.front1.article-meta1.abstract2.p1" class="link-target"></a><p>The “big-data revolution” has struck biology: it is now common for robots to prepare cell samples and take thousands of microscopy images. Looking at the resulting images by eye would be extremely tedious, not to mention subjective. Thus, many biologists find they need software to analyze images easily and accurately. The third major release of our free open-source software CellProfiler is designed to help biologists working with images, whether a few or thousands. Researchers can download an online example workflow (that is, a “pipeline”) or create their own from scratch. Pipelines are easy to save, reuse, and share, helping improve scientific reproducibility. In this release, we’ve added the capability to find and measure objects in three-dimensional (3D) images. We’ve also made changes to CellProfiler’s underlying code to make it faster to run and easier to install, and we’ve added the ability to process images in the cloud and using neural networks (deep learning). We’ve also added more explanations to CellProfiler’s settings to help new users get started. We hope these changes will make CellProfiler an even better tool for current users and will provide new users better ways to get started doing quantitative image analysis.</p> </div></div> <div xmlns:plos="http://plos.org" class="articleinfo"><p><strong>Citation: </strong>McQuin C, Goodman A, Chernyshev V, Kamentsky L, Cimini BA, Karhohs KW, et al. (2018) CellProfiler 3.0: Next-generation image processing for biology. PLoS Biol 16(7): e2005970. https://doi.org/10.1371/journal.pbio.2005970</p><p><strong>Academic Editor: </strong>Tom Misteli, National Cancer Institute, United States of America</p><p><strong>Received: </strong>March 9, 2018; <strong>Accepted: </strong>May 25, 2018; <strong>Published: </strong> July 3, 2018</p><p><strong>Copyright: </strong> © 2018 McQuin et al. This is an open access article distributed under the terms of the <a href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution License</a>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.</p><p><strong>Data Availability: </strong>All data files are available from the Broad Bioimaging Benchmark Collection (BBBC) (accession number(s) BBBC022, BBBC024, BBBC032, BBBC033, BBBC034, BBBC035). Pipelines are publicly available at <a href="https://github.com/carpenterlab/2018_mcquin_PLOSBio">https://github.com/carpenterlab/2018_mcquin_PLOSBio</a>.</p><p><strong>Funding: </strong>National Institutes of Health <a href="https://projectreporter.nih.gov/project_info_description.cfm?aid=8761195&icde=39531171&ddparam=&ddvalue=&ddsub=&cr=1&csb=default&cs=ASC&pball=">https://projectreporter.nih.gov/project_info_description.cfm?aid=8761195&icde=39531171&ddparam=&ddvalue=&ddsub=&cr=1&csb=default&cs=ASC&pball=</a> (grant number 2R01GM089652-05A1). Granted to AEC. The funder had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. National Institutes of Health <a href="https://projectreporter.nih.gov/project_info_description.cfm?aid=9276910&icde=39531212&ddparam=&ddvalue=&ddsub=&cr=1&csb=default&cs=ASC&pball=">https://projectreporter.nih.gov/project_info_description.cfm?aid=9276910&icde=39531212&ddparam=&ddvalue=&ddsub=&cr=1&csb=default&cs=ASC&pball=</a> (grant number 1R35GM122547-01). Granted to AEC. The funder had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. Allen Institute for Cell Science. Granted to AEC. The funder had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. Deutsche Forschungsgemeinschaft <a href="http://gepris.dfg.de/gepris/projekt/328668586">http://gepris.dfg.de/gepris/projekt/328668586</a> (grant number DFG research fellowship 5728). Granted to TB. The funder had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. Google Accelerated Sciences. Granted to AEC. The funder had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.</p><p><strong>Competing interests: </strong> The authors have declared that no competing interests exist.</p><p><strong>Abbreviations: </strong>3D, three-dimensional; AWS, Amazon Web Services; CNN, convolutional neural network; CPU, central processing unit; FISH, fluorescent in situ hybridization; GAPDH, glyceraldehyde 3-phosphate dehydrogenase; GPU, graphics processing unit; hiPSC, human induced pluripotent stem cell; P/S, penicillin-streptomycin; WGA, wheat germ agglutin; WTC, wild-type C</p></div> <div xmlns:plos="http://plos.org" id="section1" class="section toc-section"><a id="sec001" name="sec001" data-toc="sec001" class="link-target" title="Introduction"></a><h2>Introduction</h2> <div id="section1" class="section toc-section"><a id="sec002" name="sec002" class="link-target" title="Bioimaging software ecosystem"></a> <h3>Bioimaging software ecosystem</h3> <a id="article1.body1.sec1.sec1.p1" name="article1.body1.sec1.sec1.p1" class="link-target"></a><p>Image analysis software is now used throughout biomedical research in order to reduce subjective bias and quantify subtle phenotypes when working with microscopy images. Automated microscopes are further transforming modern research. Experiments testing chemical compounds or genetic perturbations can reach a scale of many thousands of perturbations, and multidimensional imaging (time-lapse and three-dimensional [3D]) also produces enormous data sets that require automated analysis. In light of this data scale, computer algorithms must deliver accurate identification of cells, subcompartments, or organisms and extract necessary descriptive features (metrics) for each identified object.</p> <a id="article1.body1.sec1.sec1.p2" name="article1.body1.sec1.sec1.p2" class="link-target"></a><p>Racing to keep up with the advancement of automated microscopy are several classes of biologist-focused image analysis software, such as companion packages bundled with imaging instruments (e.g., MetaMorph—Molecular Devices, Elements—Nikon), stand-alone commercial image processing tools (e.g., Imaris—Bitplane), and free open-source packages (e.g., ImageJ/Fiji, CellProfiler, Icy, KNIME). Commercial software is often convenient to use, especially when bundled with a microscope. Although cost and lack of flexibility may limit adoption, there is a focus on usability, particularly for applications of interest to the pharmaceutical industry. Still, the proprietary nature of the code in commercial software limits researchers from knowing how their data is being analyzed or modifying the strategy of a given algorithm, if desired.</p> <a id="article1.body1.sec1.sec1.p3" name="article1.body1.sec1.sec1.p3" class="link-target"></a><p>The open-source biological image analysis software ecosystem is thriving [<a href="#pbio.2005970.ref001" class="ref-tip">1</a>]. ImageJ [<a href="#pbio.2005970.ref002" class="ref-tip">2</a>] was the first and is still the most widely used package for bioimage analysis; several other packages are based on its codebase (most notably, Fiji). ImageJ excels at the analysis of individual images, with a user interface analogous to Adobe Photoshop. Its major strength is its community of users and developers who contribute plugins, although an associated drawback is the sheer number of plugins, with varying degrees of functional overlap, usability, and documentation. Multitasking toolboxes like KNIME [<a href="#pbio.2005970.ref003" class="ref-tip">3</a>] offer a more modular approach, which is better suited to automated workflows. KNIME equips users with a wide breadth of powerful utility, from performing image analysis to data analytics.</p> </div> <div id="section2" class="section toc-section"><a id="sec003" name="sec003" class="link-target" title="CellProfiler"></a> <h3>CellProfiler</h3> <a id="article1.body1.sec1.sec2.p1" name="article1.body1.sec1.sec2.p1" class="link-target"></a><p>CellProfiler, our open-source software for measuring and analyzing cell images, has been cited more than 6,000 times, currently at a rate of more than 1,000 per year. The first version of CellProfiler was introduced in 2005 and published in 2006 [<a href="#pbio.2005970.ref004" class="ref-tip">4</a>]. It is widely adopted worldwide, enabling biologists without training in computer vision or programming to quantitatively measure phenotypes robustly from thousands of images. A second major version of CellProfiler, rewritten in Python from its original MATLAB implementation, was published in 2011 [<a href="#pbio.2005970.ref005" class="ref-tip">5</a>] and included methods for tracking cells in movies and measuring neurons, worms, and tissue samples. In 2015, a laboratory unaffiliated with our team rigorously compared 15 free software tools for biological image analysis: CellProfiler was ranked first for both usability and functionality [<a href="#pbio.2005970.ref006" class="ref-tip">6</a>].</p> <a id="article1.body1.sec1.sec2.p2" name="article1.body1.sec1.sec2.p2" class="link-target"></a><p>CellProfiler provides advanced algorithms for image analysis, organized as individual modules that can be placed in sequential order to form a pipeline. This pipeline is then used to identify and measure cells or other biological objects and their morphological features. CellProfiler’s modular design and carefully curated library of image processing and analysis modules benefits biologists in several ways:</p> <a id="article1.body1.sec1.sec2.p3" name="article1.body1.sec1.sec2.p3" class="link-target"></a><p>Reproducibility at scale: CellProfiler is designed to produce high-content information for each cell or other object of interest in each image and to apply the same objective analysis in high-throughput, e.g., across thousands or millions of images.</p> <a id="article1.body1.sec1.sec2.p4" name="article1.body1.sec1.sec2.p4" class="link-target"></a><p>Flexible feature extraction: Individual modules measure standard morphological features such as size, shape, intensity, and texture. Customized combinations of modules can extract even more complex information. As such, CellProfiler is commonly used for morphological profiling experiments such as Cell Painting [<a href="#pbio.2005970.ref007" class="ref-tip">7</a>,<a href="#pbio.2005970.ref008" class="ref-tip">8</a>], which is being adopted in pharmaceutical companies to speed several steps in drug discovery [<a href="#pbio.2005970.ref009" class="ref-tip">9</a>].</p> <a id="article1.body1.sec1.sec2.p5" name="article1.body1.sec1.sec2.p5" class="link-target"></a><p>Easy to learn: Each of the 70+ modules includes carefully crafted documentation, curated by both imaging and biology experts, to make image processing more approachable and understandable for the average scientist. Further, each individual setting is explained in practical terms to aid researchers in configuring it. The number of modules and settings is carefully limited to avoid overwhelming users, while a plugin system allows the flexibility of a larger array of contributed modules.</p> <a id="article1.body1.sec1.sec2.p6" name="article1.body1.sec1.sec2.p6" class="link-target"></a><p>Community: CellProfiler has an active community of more than 3,000 people on its online question and answer forum. With more than 15,000 posts, users provide feedback that fuels improvements to CellProfiler, find pipelines related to their area of research, interact with developers, get input on challenging problems, and improve image analysis skills and knowledge by helping other users design solutions.</p> </div> </div> <div xmlns:plos="http://plos.org" id="section2" class="section toc-section"><a id="sec004" name="sec004" data-toc="sec004" class="link-target" title="Results"></a><h2>Results</h2><a id="article1.body1.sec2.p1" name="article1.body1.sec2.p1" class="link-target"></a><p>In the CellProfiler 3.0 release, we introduced methods for analyzing 3D images, using deep learning architectures and cloud computing resources, and other improvements to CellProfiler’s usability and capabilities.</p> <div id="section1" class="section toc-section"><a id="sec005" name="sec005" class="link-target" title="High-throughput 3D analysis"></a> <h3>High-throughput 3D analysis</h3> <a id="article1.body1.sec2.sec1.p1" name="article1.body1.sec2.sec1.p1" class="link-target"></a><p>This new version of CellProfiler has support for analysis of 3D images in many of its modules (<a href="#pbio.2005970.s001">S1 Fig</a>). Although open-source software tuned to 3D problems exists (e.g., Vaa3D, BioImageXD, Slicer) [<a href="#pbio.2005970.ref010" class="ref-tip">10</a>], it often emphasizes visualization and rendering; these new 3D capabilities of CellProfiler meet the community’s demand for modular high-throughput 3D analysis. CellProfiler 3.0 can apply image processing, segmentation, and feature extraction algorithms to entire image volumes (volumetric analysis), in addition to the more typical iterative and separate analysis of two-dimensional slices from a 3D volume (“plane-wise” analysis). Whole-volume algorithms consider 3D neighborhoods and incorporate information from surrounding planes, yielding more accurate results, but require more available memory, particularly for large files. CellProfiler’s volumetric algorithms can be configured to account for anisotropic data (in which the distance between Z planes does not match the distance between pixels in the X and Y dimensions). While we focused on adding 3D capability to most of our image processing and feature extraction modules, we will continue increasing the number of CellProfiler modules that support image volumes for situations in which it is not computationally prohibitive.</p> <a id="article1.body1.sec2.sec1.p2" name="article1.body1.sec2.sec1.p2" class="link-target"></a><p>We developed 3D pipelines to identify cells and subcompartments of cells for a number of experimental situations and sample types across a number of laboratories. We identified nuclei based on a DNA stain (<a href="#pbio-2005970-g001">Fig 1A</a>) in 3D image stacks of human induced pluripotent stem cells (hiPSCs). After processing by several CellProfiler modules (<a href="#pbio-2005970-g001">Fig 1C</a>), the final results agree well with manually annotated nuclei (<a href="#pbio-2005970-g001">Fig 1D</a>). Results for a variety of images with a range of complexity are shown in <a href="#pbio-2005970-g002">Fig 2</a>, with more detailed views in <a href="#pbio.2005970.s002">S2</a>–<a href="#pbio.2005970.s005">S5</a> Figs. We characterized CellProfiler’s segmentation accuracy in two ways: in the first, we used real microscopy images (<a href="#pbio-2005970-g001">Fig 1A</a>, <a href="#pbio-2005970-g002">Fig 2A</a>, <a href="#pbio-2005970-g002">Fig 2B</a>) whose ground truth was manually annotated by an expert image analyst; such images are realistic, but the manual annotation introduces some subjectivity. We therefore also used synthetic images (<a href="#pbio-2005970-g002">Fig 2C</a>, <a href="#pbio-2005970-g002">Fig 2D</a>)[<a href="#pbio.2005970.ref011" class="ref-tip">11</a>,<a href="#pbio.2005970.ref012" class="ref-tip">12</a>], which, depending on the model used to create them, may not perfectly represent real microscopy images but whose ground truth can be unambiguously known.</p> <a class="link-target" id="pbio-2005970-g001" name="pbio-2005970-g001"></a><div class="figure" data-doi="10.1371/journal.pbio.2005970.g001"><div class="img-box"><a title="Click for larger image" href="article/figure/image?size=medium&id=10.1371/journal.pbio.2005970.g001" data-doi="10.1371/journal.pbio.2005970" data-uri="10.1371/journal.pbio.2005970.g001"><img src="article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g001" alt="thumbnail" class="thumbnail" loading="lazy"></a><div class="expand"></div></div><div class="figure-inline-download"> Download: <ul><li><a href="article/figure/powerpoint?id=10.1371/journal.pbio.2005970.g001"><div class="definition-label">PPT</div><div class="definition-description">PowerPoint slide</div></a></li><li><a href="article/figure/image?download&size=large&id=10.1371/journal.pbio.2005970.g001"><div class="definition-label">PNG</div><div class="definition-description">larger image</div></a></li><li><a href="article/figure/image?download&size=original&id=10.1371/journal.pbio.2005970.g001"><div class="definition-label">TIFF</div><div class="definition-description">original image</div></a></li></ul></div><div class="figcaption"><span>Fig 1. </span> Volumetric processing for 3D images of DNA-stained nuclei of hiPSCs using CellProfiler 3.0.</div><p class="caption_target"><a id="article1.body1.sec2.sec1.fig1.caption1.p1" name="article1.body1.sec2.sec1.fig1.caption1.p1" class="link-target"></a><p>Images are from the Allen Institute for Cell Science, Seattle, and available from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC034/">https://data.broadinstitute.org/bbbc/BBBC034/</a>). (A) Original 3D image of nuclei monolayer prior to analysis. (B) Evaluation of CellProfiler 3.0 performance in comparison to the MorphoLibJ plugin in Fiji software. Both were compared to manually annotated ground truth using CellProfiler’s MeasureImageOverlap module. (C) Selected CellProfiler 3.0 image processing modules used for hiPSC nucleus segmentation. Figure labels: RH (“RemoveHoles”), EorS Features (“EnhanceOrSuppressFeatures”). (D) Ground truth obtained by manual annotation of each Z-slice using GIMP software. (E) Image processing done using Fiji’s MorphoLibJ plugin (macro code is presented in <a href="#pbio.2005970.s010">S1 Table</a>). 3D, three-dimensional; hiPSC, human induced pluripotent stem cell.</p> </p><p class="caption_object"><a href="https://doi.org/10.1371/journal.pbio.2005970.g001"> https://doi.org/10.1371/journal.pbio.2005970.g001</a></p></div><a class="link-target" id="pbio-2005970-g002" name="pbio-2005970-g002"></a><div class="figure" data-doi="10.1371/journal.pbio.2005970.g002"><div class="img-box"><a title="Click for larger image" href="article/figure/image?size=medium&id=10.1371/journal.pbio.2005970.g002" data-doi="10.1371/journal.pbio.2005970" data-uri="10.1371/journal.pbio.2005970.g002"><img src="article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g002" alt="thumbnail" class="thumbnail" loading="lazy"></a><div class="expand"></div></div><div class="figure-inline-download"> Download: <ul><li><a href="article/figure/powerpoint?id=10.1371/journal.pbio.2005970.g002"><div class="definition-label">PPT</div><div class="definition-description">PowerPoint slide</div></a></li><li><a href="article/figure/image?download&size=large&id=10.1371/journal.pbio.2005970.g002"><div class="definition-label">PNG</div><div class="definition-description">larger image</div></a></li><li><a href="article/figure/image?download&size=original&id=10.1371/journal.pbio.2005970.g002"><div class="definition-label">TIFF</div><div class="definition-description">original image</div></a></li></ul></div><div class="figcaption"><span>Fig 2. </span> Examples of 3D image segmentation produced by CellProfiler 3.0, across two experimental systems and two sets of synthesized images.</div><p class="caption_target"><a id="article1.body1.sec2.sec1.fig2.caption1.p1" name="article1.body1.sec2.sec1.fig2.caption1.p1" class="link-target"></a><p>Three focal planes shown for each. Raw images (left) and CellProfiler outputs (right) showing nuclei of mouse embryo blastocyst (A), mouse trophoblast stem cells (B), and synthetic images of HL60 cell lines (C) and (D). More information about segmentation steps used for these images can be found in <a href="#pbio.2005970.s002">S2</a>–<a href="#pbio.2005970.s005">S5</a> Figs. (E) Comparison of the segmentation accuracy of CellProfiler 3.0 and Fiji’s plugin MorphoLibJ, based on the Rand index of the processed image and its ground truth (out of a total of 1.0). Object accuracy comparisons of these same images may be found in <a href="#pbio.2005970.s017">S6 Fig</a> and <a href="#pbio.2005970.s014">S3</a> File. 3D, three-dimensional; hiPSC, human induced pluripotent stem cell.</p> </p><p class="caption_object"><a href="https://doi.org/10.1371/journal.pbio.2005970.g002"> https://doi.org/10.1371/journal.pbio.2005970.g002</a></p></div><a id="article1.body1.sec2.sec1.p3" name="article1.body1.sec2.sec1.p3" class="link-target"></a><p>To determine how well the segmented objects agreed with ground truth, CellProfiler’s “MeasureImageOverlap” module was used to calculate the plane-wise Rand index [<a href="#pbio.2005970.ref013" class="ref-tip">13</a>], a performance metric of accuracy (<a href="#pbio-2005970-g001">Fig 1B</a>, <a href="#pbio-2005970-g002">Fig 2E</a>). Rand index values showed good agreement (0.919–0.976) between each tested image and its ground truth. The results produced by CellProfiler 3.0 were comparable to results produced by the commonly used Fiji plugin MorphoLibJ (0.930–0.977) (<a href="#pbio-2005970-g001">Fig 1B</a>, <a href="#pbio-2005970-g002">Fig 2E</a> and <a href="#pbio.2005970.s002">S2</a>–<a href="#pbio.2005970.s005">S5</a> Figs; the MorphoLibJ macro codes are provided in <a href="#pbio.2005970.s010">S1 Table</a>). We demonstrate several kinds of analysis, including analyses of cell count in a time series that was synthetically generated [<a href="#pbio.2005970.ref011" class="ref-tip">11</a>,<a href="#pbio.2005970.ref014" class="ref-tip">14</a>](<a href="#pbio.2005970.s005">S5 Fig</a>); identification and quantification of children objects inside parent objects, such as speckles of transcripts within cells (<a href="#pbio-2005970-g003">Fig 3</a>); and measurement of various features of hiPSCs located at the center and the edge of the cell colony (<a href="#pbio-2005970-g004">Fig 4</a>).</p> <a class="link-target" id="pbio-2005970-g003" name="pbio-2005970-g003"></a><div class="figure" data-doi="10.1371/journal.pbio.2005970.g003"><div class="img-box"><a title="Click for larger image" href="article/figure/image?size=medium&id=10.1371/journal.pbio.2005970.g003" data-doi="10.1371/journal.pbio.2005970" data-uri="10.1371/journal.pbio.2005970.g003"><img src="article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g003" alt="thumbnail" class="thumbnail" loading="lazy"></a><div class="expand"></div></div><div class="figure-inline-download"> Download: <ul><li><a href="article/figure/powerpoint?id=10.1371/journal.pbio.2005970.g003"><div class="definition-label">PPT</div><div class="definition-description">PowerPoint slide</div></a></li><li><a href="article/figure/image?download&size=large&id=10.1371/journal.pbio.2005970.g003"><div class="definition-label">PNG</div><div class="definition-description">larger image</div></a></li><li><a href="article/figure/image?download&size=original&id=10.1371/journal.pbio.2005970.g003"><div class="definition-label">TIFF</div><div class="definition-description">original image</div></a></li></ul></div><div class="figcaption"><span>Fig 3. </span> Segmentation steps for the quantification of transcripts per cell within a 3D blastocyst.</div><p class="caption_target"><a id="article1.body1.sec2.sec1.fig3.caption1.p1" name="article1.body1.sec2.sec1.fig3.caption1.p1" class="link-target"></a><p>Images were captured of a mouse embryo blastocyst cell membrane stained with WGA and FISH for GAPDH transcripts. (A) Original 3D image of blastocyst cell membrane prior to analysis. (B) CellProfiler 3.0 image processing modules used for membrane image processing. Figure labels: RH (“RemoveHoles”), Close (“Closing”), Erode (“Erosion”), Mask (“MaskImage”), Math (“ImageMath”), EorS Features (“EnhanceOrSuppressFeatures”). (C) Nuclei after segmentation by CellProfiler, as viewed in Fiji. (D) Segmentation of cells after setting nuclei as seeds by CellProfiler, as viewed in Fiji. (E) Segmentation of GAPDH transcript foci using CellProfiler, as viewed in Fiji. (F) Examples of analysis that can be done by CellProfiler: (top) cell volume relative nucleus volume, (middle) GAPDH transcript quantity in each cell using CellProfiler’s “RelateObjects” module, (bottom) number of GAPDH transcripts in Z-plane (bin size = 2.5 μm). The underlying measurements may be downloaded as <a href="#pbio.2005970.s012">S1 File</a>. <em>Images were provided by Javier Frias Aldeguer and Nicolas Rivron from Hubrecht Institute</em>, <em>Netherlands</em>, <em>and are available from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC032/">https://data.broadinstitute.org/bbbc/BBBC032/</a></em>). 3D, three-dimensional; FISH, fluorescent in situ hybridization; GAPDH, glyceraldehyde 3-phosphate dehydrogenase; WGA, wheat germ agglutinin.</p> </p><p class="caption_object"><a href="https://doi.org/10.1371/journal.pbio.2005970.g003"> https://doi.org/10.1371/journal.pbio.2005970.g003</a></p></div><a class="link-target" id="pbio-2005970-g004" name="pbio-2005970-g004"></a><div class="figure" data-doi="10.1371/journal.pbio.2005970.g004"><div class="img-box"><a title="Click for larger image" href="article/figure/image?size=medium&id=10.1371/journal.pbio.2005970.g004" data-doi="10.1371/journal.pbio.2005970" data-uri="10.1371/journal.pbio.2005970.g004"><img src="article/figure/image?size=inline&id=10.1371/journal.pbio.2005970.g004" alt="thumbnail" class="thumbnail" loading="lazy"></a><div class="expand"></div></div><div class="figure-inline-download"> Download: <ul><li><a href="article/figure/powerpoint?id=10.1371/journal.pbio.2005970.g004"><div class="definition-label">PPT</div><div class="definition-description">PowerPoint slide</div></a></li><li><a href="article/figure/image?download&size=large&id=10.1371/journal.pbio.2005970.g004"><div class="definition-label">PNG</div><div class="definition-description">larger image</div></a></li><li><a href="article/figure/image?download&size=original&id=10.1371/journal.pbio.2005970.g004"><div class="definition-label">TIFF</div><div class="definition-description">original image</div></a></li></ul></div><div class="figcaption"><span>Fig 4. </span> Segmentation and analysis of 3D hiPSC images using CellProfiler 3.0.</div><p class="caption_target"><a id="article1.body1.sec2.sec1.fig4.caption1.p1" name="article1.body1.sec2.sec1.fig4.caption1.p1" class="link-target"></a><p>DNA channel showing nuclei (A), CellMaskDeepRed channel showing membrane (B), and GFP channel showing beta-actin (C) at the center (left) and edge (right) of the hiPSC colony. (D) Various measurements obtained from the samples are shown; note that cells touching the edge of each image are excluded from this analysis. The underlying measurements may be downloaded as <a href="#pbio.2005970.s013">S2 File</a>. <em>Images are from the Allen Institute for Cell Science</em>, <em>Seattle</em>, <em>and are available from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC034/">https://data.broadinstitute.org/bbbc/BBBC034/</a>)</em>. 3D, three-dimensional; GFP, green fluorescent protein; hiPSC, human induced pluripotent stem cell.</p> </p><p class="caption_object"><a href="https://doi.org/10.1371/journal.pbio.2005970.g004"> https://doi.org/10.1371/journal.pbio.2005970.g004</a></p></div><a id="article1.body1.sec2.sec1.p4" name="article1.body1.sec2.sec1.p4" class="link-target"></a><p>All pipelines, annotated with notes to understand the function of each module, are provided at <a href="https://github.com/carpenterlab/2018_mcquin_PLOSBio">https://github.com/carpenterlab/2018_mcquin_PLOSBio</a>. All raw images, together with ground truth annotations used to test CellProfiler 3.0 performance, are publicly available for further community algorithm development in the Broad Bioimage Benchmark Collection [<a href="#pbio.2005970.ref015" class="ref-tip">15</a>], as indicated in the legends for <a href="#pbio-2005970-g001">Fig 1</a> and <a href="#pbio.2005970.s002">S2</a>–<a href="#pbio.2005970.s005">S5</a> Figs.</p> </div> <div id="section2" class="section toc-section"><a id="sec006" name="sec006" class="link-target" title="Support for deep learning"></a> <h3>Support for deep learning</h3> <a id="article1.body1.sec2.sec2.p1" name="article1.body1.sec2.sec2.p1" class="link-target"></a><p>Convolutional neural networks (CNNs) are a type of deep learning model that transforms input images into outputs specified by the problem type [<a href="#pbio.2005970.ref016" class="ref-tip">16</a>]. For instance, image classification models transform images into categorical labels [<a href="#pbio.2005970.ref017" class="ref-tip">17</a>], while image segmentation models transform images into segmentation masks [<a href="#pbio.2005970.ref018" class="ref-tip">18</a>]. CNNs are now widely used to solve many computer vision tasks, given their ability to produce accurate outputs after learning from examples. CellProfiler now can be configured to make use of cutting-edge CNNs to analyze biomedical images. While CellProfiler does not yet incorporate user-friendly functionalities to train neural networks, various models that have been already trained by researchers can be run inside CellProfiler.</p> <a id="article1.body1.sec2.sec2.p2" name="article1.body1.sec2.sec2.p2" class="link-target"></a><p>Running neural network models requires the installation of certain deep learning frameworks that are distributed separately, such as TensorFlow or Caffe. TensorFlow [<a href="#pbio.2005970.ref019" class="ref-tip">19</a>] is an open-source software library for machine learning that interfaces with Python and is compatible with CellProfiler when installed from source on Linux, Mac, and more recently, Windows. Caffe [<a href="#pbio.2005970.ref020" class="ref-tip">20</a>] is a deep learning framework designed for high-performance neural networks and is primarily available for Linux systems. Some network models may need special graphics processing units (GPUs) installed and configured in the system to run the computations efficiently, but this is not always required. Fortunately, both TensorFlow and Caffe can easily switch between running on GPUs and traditional central processing units (CPUs) just by changing the corresponding configuration.</p> <a id="article1.body1.sec2.sec2.p3" name="article1.body1.sec2.sec2.p3" class="link-target"></a><p>We created the CellProfiler 3.0 module ClassifyPixels-Unet to segment nuclei in images stained with DNA labels (<a href="https://github.com/CellProfiler/CellProfiler-plugins">https://github.com/CellProfiler/CellProfiler-plugins</a>). This plugin implements a U-Net[<a href="#pbio.2005970.ref018" class="ref-tip">18</a>] model using TensorFlow and can be run on CPUs. We have also provided the network architecture with training routines in case users have their own annotated images to learn a segmentation model for different images and objects of interest (<a href="https://github.com/jccaicedo/unet4nuclei">https://github.com/carpenterlab/unet4nuclei</a>). The ClassifyPixels-Unet module classifies pixels into one of three classes: background, nucleus interior, or nuclear boundary (<a href="#pbio.2005970.s007">S7 Fig</a>). A pretrained network for nuclei segmentation is available for download and is automatically loaded by the plugin; a pipeline and image to run this are available as <a href="#pbio.2005970.s015">S4 File</a>.</p> <a id="article1.body1.sec2.sec2.p4" name="article1.body1.sec2.sec2.p4" class="link-target"></a><p>We also created a CellProfiler 3.0 module, MeasureImageFocus, in collaboration with Google Accelerated Science, who trained a model to detect focus in images [<a href="#pbio.2005970.ref021" class="ref-tip">21</a>]. The module displays a table with the predicted focus score and certainty for the whole image, as well as a figure with the focus scores and corresponding certainties of individual 84 × 84 patches represented by color and opaqueness. It uses TensorFlow as its underlying deep learning framework. Independently, Sadanandan and colleagues created a CellProfiler 2.2.0 module—CellProfiler-Caffe bridge—that enables running a pretrained model for cell segmentation within a CellProfiler pipeline [<a href="#pbio.2005970.ref022" class="ref-tip">22</a>].</p> </div> <div id="section3" class="section toc-section"><a id="sec007" name="sec007" class="link-target" title="Cloud computing"></a> <h3>Cloud computing</h3> <a id="article1.body1.sec2.sec3.p1" name="article1.body1.sec2.sec3.p1" class="link-target"></a><p>We created Distributed-CellProfiler (<a href="https://github.com/CellProfiler/Distributed-CellProfiler">https://github.com/CellProfiler/Distributed-CellProfiler</a>), a script-based interface that allows running thousands of batches of images through CellProfiler in parallel on Amazon Web Services (AWS; <a href="#pbio.2005970.s008">S8 Fig</a>). While Distributed-CellProfiler does require basic knowledge of AWS and interaction with the command line, it is well documented and has been successfully run by biologists without formal computational training. The script handles infrastructure creation and removal as well as creation and storage of logs, allowing users without access to a local cluster computing environment to analyze large data sets with only minimal time devoted to having to set up those resources. Sample pipelines and configuration files are available as <a href="#pbio.2005970.s016">S5 File</a>.</p> </div> <div id="section4" class="section toc-section"><a id="sec008" name="sec008" class="link-target" title="Improvements for CellProfiler 3.0"></a> <h3>Improvements for CellProfiler 3.0</h3> <a id="article1.body1.sec2.sec4.p1" name="article1.body1.sec2.sec4.p1" class="link-target"></a><p>Plug-ins: CellProfiler-plugins is a new repository for the community to share and distribute new CellProfiler modules (<a href="https://github.com/CellProfiler/CellProfiler-plugins">https://github.com/CellProfiler/CellProfiler-plugins</a>).</p> <a id="article1.body1.sec2.sec4.p2" name="article1.body1.sec2.sec4.p2" class="link-target"></a><p>Documentation: All of CellProfiler’s documentation was updated for content and readability; detailed help is available for 100% of module configuration options (excluding plugins).</p> <a id="article1.body1.sec2.sec4.p3" name="article1.body1.sec2.sec4.p3" class="link-target"></a><p>New image processing features: CellProfiler 3.0 introduces an extended suite of modules for feature detection, feature extraction, filtering and noise reduction, image processing, image segmentation, and mathematical morphology operations.</p> <a id="article1.body1.sec2.sec4.p4" name="article1.body1.sec2.sec4.p4" class="link-target"></a><p>Infrastructure improvements: The project team reengineered major core components of CellProfiler. CellProfiler’s codebase was trimmed down, in part because of better integration with Python’s scientific community. We have adopted and contributed to the standard libraries of the scientific Python community, including NumPy, SciPy, and scikit-image. CellProfiler’s code is now 100% Python, which improves interoperability with the robust Python scientific ecosystem and simplifies third-party contributions. As well, we upgraded support to 64-bit on Linux, MacOS, and Windows, and a continuous integration process ensures the software is well tested on a variety of platforms.</p> <a id="article1.body1.sec2.sec4.p5" name="article1.body1.sec2.sec4.p5" class="link-target"></a><p>We made substantial progress simplifying CellProfiler’s installation. In addition to our previously existing Mac and Windows builds, a Python wheel is now available from the Python Package Index, and a Docker image is now available from Docker Hub. In an effort to expand CellProfiler’s flexibility, we made CellProfiler much simpler to compile on a variety of familiar and unusual platforms by requiring fewer dependencies and only using ubiquitous build systems.</p> <a id="article1.body1.sec2.sec4.p6" name="article1.body1.sec2.sec4.p6" class="link-target"></a><p>Educational resources: CellProfiler’s many examples and tutorials are now publicly available on GitHub (<a href="https://github.com/CellProfiler/examples">https://github.com/CellProfiler/examples</a> and <a href="https://github.com/CellProfiler/tutorials">https://github.com/CellProfiler/tutorials</a>) and have been updated for compatibility with CellProfiler 3.0.</p> <a id="article1.body1.sec2.sec4.p7" name="article1.body1.sec2.sec4.p7" class="link-target"></a><p>Speed: CellProfiler 3.0’s processing speed is faster than version 2.2 on the most common types of pipelines; the degree of difference depends on the exact modules involved: CellProfiler 3.0 ran at a comparable or faster speed than CellProfiler 2.2 for 11 of 16 example pipelines tested (<a href="#pbio.2005970.s009">S9 Fig</a>). While the total amount of time needed to run the five pipelines shown in <a href="#pbio.2005970.s009">S9 Fig</a> was comparable between CellProfiler and MorphoLibJ (482 versus 542 seconds), the relative speed was highly specific to the individual pipeline (<a href="#pbio.2005970.s017">S6 File</a>), ranging from 2× faster in CellProfiler to 6× faster in MorphoLibJ (<a href="#pbio.2005970.s011">S2 Table</a>). In addition, CellProfiler can run multiple images in parallel, depending on the individual’s number of threads, computing power, and access to cloud computing resources, making it suited to large-scale experiments. As well, CellProfiler’s modules enable more readily configurable complex analyses than MorphoLibJ, such as associating cytoplasm regions (as in <a href="#pbio-2005970-g003">Fig 3</a>), transcripts (as in <a href="#pbio-2005970-g003">Fig 3</a>), and other entities to nuclei and measuring a wide variety of morphological properties of each, including intensities, shapes, textures, colocalization metrics, and neighborhood relationships (as in <a href="#pbio-2005970-g004">Fig 4</a>).</p> </div> </div> <div xmlns:plos="http://plos.org" id="section3" class="section toc-section"><a id="sec009" name="sec009" data-toc="sec009" class="link-target" title="Future directions"></a><h2>Future directions</h2><a id="article1.body1.sec3.p1" name="article1.body1.sec3.p1" class="link-target"></a><p>CellProfiler is mature software serving a large community and making an impact through its thousands of users’ biological discoveries. It has been involved in the discovery of potential life-saving drugs for infectious diseases, leukemia, and cerebral cavernous malformation [<a href="#pbio.2005970.ref023" class="ref-tip">23</a>–<a href="#pbio.2005970.ref027" class="ref-tip">27</a>] and in clinical trials for hematological malignancies [<a href="#pbio.2005970.ref028" class="ref-tip">28</a>] and will continue to fuel basic and applied research around the world.</p> <a id="article1.body1.sec3.p2" name="article1.body1.sec3.p2" class="link-target"></a><p>CellProfiler can readily generate a large amount of morphological information for each biological entity that is measured. We see advancements in data mining, downstream and apart from CellProfiler, as blossoming in the coming years. Already, 20 laboratories in the field of morphological profiling have gathered for two annual meetings/hackathons (now called CytoData) [<a href="#pbio.2005970.ref029" class="ref-tip">29</a>], collaborated to outline best practices [<a href="#pbio.2005970.ref030" class="ref-tip">30</a>], and begun a community library (Cytominer, <a href="https://github.com/cytomining/cytominer">https://github.com/cytomining/cytominer</a>). In addition to our user-friendly tool for classical machine learning based on measured features, CellProfiler Analyst [<a href="#pbio.2005970.ref031" class="ref-tip">31</a>], we have begun creating Deepometry (<a href="http://github.com/broadinstitute/deepometry">http://github.com/broadinstitute/deepometry</a>), a tool that enables scientists without training in machine learning to perform single-cell phenotype classification using deep learning and other advanced downstream data analytics. Interoperability of CellProfiler with popular notebook tools like Jupyter would allow seamless workflows involving other complementary software tools.</p> <a id="article1.body1.sec3.p3" name="article1.body1.sec3.p3" class="link-target"></a><p>Finally, deep learning has revolutionized computer vision and other fields in the past few years [<a href="#pbio.2005970.ref016" class="ref-tip">16</a>,<a href="#pbio.2005970.ref032" class="ref-tip">32</a>], and bioimaging will be no exception. As noted, already some models trained for specific tasks can be used via CellProfiler, and we expect that over time, more generalizable models will be created that can accomplish useful tasks such as detecting common cellular structures across diverse types of images and experimental setups, as in, for example, the 2018 Data Science Bowl challenge. Community-driven collections of images and ground truth, as well as “model zoos,” will be instrumental for this. We have also begun creating libraries (Keras-ResNet [<a href="https://github.com/broadinstitute/keras-resnet">https://github.com/broadinstitute/keras-resnet</a>] and Keras-RCNN [<a href="https://github.com/broadinstitute/keras-rcnn">https://github.com/broadinstitute/keras-rcnn</a>]) that will provide the foundation for interfaces that allow biologists to annotate, train, and use deep learning models. We expect that over time, these models will reduce the amount of time biologists spend tuning classical image processing algorithms to identify biological entities of interest in images.</p> </div> <div xmlns:plos="http://plos.org" id="section4" class="section toc-section"><a id="sec010" name="sec010" data-toc="sec010" class="link-target" title="Materials and methods"></a><h2>Materials and methods</h2> <div id="section1" class="section toc-section"><a id="sec011" name="sec011" class="link-target" title="Blastocyst and trophoblast cell imaging"></a> <h3>Blastocyst and trophoblast cell imaging</h3> <a id="article1.body1.sec4.sec1.p1" name="article1.body1.sec4.sec1.p1" class="link-target"></a><p>Images were kindly provided by Javier Frias Aldeguer and Nicolas Rivron of Hubrecht Institute for Developmental Biology and Stem Cell Research and Li Linfeng of MERLN Institute for Technology-Inspired Regenerative Medicine. As per Rivron and colleagues [<a href="#pbio.2005970.ref033" class="ref-tip">33</a>], mouse embryos (3.5 dpc) were fixed right after isolation from the mother’s uterus. Fixation was performed using 4% PFA in RNAse-free PBS containing 1% acetic acid. ViewRNA ISH Cell Assay kit (cat# QVC0001) was used for performing smFISH on the embryos. The protocol includes steps of permeabilization and protease treatment as well as probes, preamplifier, amplifier, and label hybridizations. Embryos were then mounted in Slowfade reagent (Thermofisher cat# S36937) and directly imaged in a PerkinElmer Ultraview VoX spinning disk microscope in confocal mode by using a 63×/1.40 NA oil immersion lens.</p> </div> <div id="section2" class="section toc-section"><a id="sec012" name="sec012" class="link-target" title="hiPSC culture, staining and imaging"></a> <h3>hiPSC culture, staining and imaging</h3> <a id="article1.body1.sec4.sec2.p1" name="article1.body1.sec4.sec2.p1" class="link-target"></a><p>Images were acquired by collaborators from the Allen Institute for Cell Science, Seattle, as per Roberts and colleagues [<a href="#pbio.2005970.ref034" class="ref-tip">34</a>]. Briefly, wild-type C (WTC) hiPSCs were cultured in a feeder-free system on tissue culture dishes or plates coated with GFR Matrigel (Corning) diluted 1:30 in cold DMEM/F12 (Gibco). Undifferentiated cells were maintained with phenol red containing mTeSR1 media (85850, STEMCELL Technologies) supplemented with 1% (v/v) penicillin-streptomycin (P/S; Gibco). Cells were not allowed to reach confluency greater than 85% and are passaged every 3–4 days by dissociation into single-cell suspension using StemPro Accutase (Gibco). When in single-cell suspension, cells were counted using a Vi-CELL Series Cell Viability Analyzer (Beckman Coulter). After passaging, cells were replated in mTeSR1 supplemented with 1% P/S and 10 μM ROCK inhibitor (Stemolecule Y-27632, Stemgent) for 24 hours. Media is replenished with fresh mTeSR1 media supplemented with 1% P/S daily. Cells were maintained at 37°C and 5% CO2. Cells were maintained with phenol red–free mTeSR1 media (05876, STEMCELL Technologies) 1 day prior to live cell imaging.</p> <a id="article1.body1.sec4.sec2.p2" name="article1.body1.sec4.sec2.p2" class="link-target"></a><p>Three to four days after cells are plated and mature and healthy colonies are observed on 96- and 24-well imaging plates, the cells are stained with NucBlue Live ready probe reagent (R37605, ThermoFisher) and CellMask Deep Red plasma membrane stain (C10046, ThermoFisher) to visualize DNA and plasma membrane, respectively. The protocol is available online: <a href="http://www.allencell.org/uploads/8/1/9/9/81996008/sop_for_cellmask-and-nucblue_v1.0_1.pdf">http://www.allencell.org/uploads/8/1/9/9/81996008/sop_for_cellmask-and-nucblue_v1.0_1.pdf</a>. Phenol red–free mTeSR1 is preequilibrated to 37°C and 5% CO2. 1X NucBlue solution made in preequilibrated phenol red–free mTeSR1 is spun for 60 minutes at 20,000 g. The 2X and 10X working stocks of CellMask Deep Red lot #1730970 and #1813792, respectively, are made in 1X NucBlue solution. All solutions are kept at 37°C and 5% CO2 until used. The 100 μL and 400 μL of NucBlue solution are added per well of 96-well imaging plates and 24-well imaging plates, respectively, and incubated at 37°C and 5% CO2 for 20 minutes. An equal amount of CellMask Deep Red working stock is added to the wells containing NucBlue solution. Final dye concentrations in the wells are 1X NucBlue and 1X and 5X CellMask Deep Red lots #1730970 and #1813792, respectively. Cells are incubated at 37°C and 5% CO2 for 10 minutes and gently washed with preequilibrated phenol red–free mTeSR1. Fields of view as shown in <a href="#pbio-2005970-g004">Fig 4</a> that are acquired near the edge (and the center as a control) of hiPSC colonies receive an additional photoprotective cocktail treatment which serves to minimize singlet oxygen and free radical formation. The photoprotective cocktail is used at a working concentration of 0.3 U/ml (1:100) OxyFluor as defined by the OxyFluor product insert, with the addition of 10 mM sodium lactate and 1 mM ascorbic acid (OxyFluor OF-0005, Oxyrase).</p> <a id="article1.body1.sec4.sec2.p3" name="article1.body1.sec4.sec2.p3" class="link-target"></a><p>As per Roberts and colleagues [<a href="#pbio.2005970.ref034" class="ref-tip">34</a>], cells were imaged on a Carl Zeiss spinning disk microscope with a Carl Zeiss 20×/0.8 NA plan APOCHROMAT or 100×/1.25 W C-APOCHROMAT Korr UV Vis IR objective, a CSU-X1 Yokogawa spinning disk head, and Hamamatsu Orca Flash 4.0 camera. Microscopes were outfitted with a humidified environmental chamber to maintain cells at 37°C with 5% CO2 during imaging. Cells are imaged immediately following the wash step and for up to 2.5 hours after dye addition on a Zeiss spinning disk microscope at 100× with the following general settings: 405 nm at 0.28 mW, 200 ms exposure; 638 nm at 2.4 mW, 200 ms exposure; acquiring each channel at each z-step.</p> </div> <div id="section3" class="section toc-section"><a id="sec013" name="sec013" class="link-target" title="Generation of ground truth annotations"></a> <h3>Generation of ground truth annotations</h3> <a id="article1.body1.sec4.sec3.p1" name="article1.body1.sec4.sec3.p1" class="link-target"></a><p>Experienced bioimage analysts drew outlines around nuclear boundaries on each slice of the 3D images and labeled background regions in a different color with GIMP (<a href="https://www.gimp.org/">https://www.gimp.org</a>), an open-source drawing and annotation software. These annotated layers were then exported from GIMP as an image. This outline image is converted to 3D objects via a CellProfiler pipeline (<a href="https://github.com/CellProfiler/tutorials/tree/master/Annotation">https://github.com/CellProfiler/tutorials/tree/master/Annotation</a>), and an object label matrix image is exported, in which each object’s voxels are assigned a unique integer value. These label images are referenced as ground truth.</p> </div> </div> <div xmlns:plos="http://plos.org" id="section5" class="section toc-section"><a id="sec014" name="sec014" data-toc="sec014" class="link-target" title="Supporting information"></a><h2>Supporting information</h2><div class="figshare_widget" doi="10.1371/journal.pbio.2005970"></div><div class="supplementary-material"><a name="pbio.2005970.s001" id="pbio.2005970.s001" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s001">S1 Fig. </a>Modules with support for 3D in CellProfiler.</h3><a id="article1.body1.sec5.supplementary-material1.caption1.p1" name="article1.body1.sec5.supplementary-material1.caption1.p1" class="link-target"></a><p class="preSiDOI">Overview of modules available in CellProfiler 3.1.0 for 3D image analysis. 3D, three-dimensional.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s001">https://doi.org/10.1371/journal.pbio.2005970.s001</a></p><a id="article1.body1.sec5.supplementary-material1.caption1.p2" name="article1.body1.sec5.supplementary-material1.caption1.p2" class="link-target"></a><p class="postSiDOI">(TIF)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s002" id="pbio.2005970.s002" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s002">S2 Fig. </a>Segmentation steps for the analysis of mouse embryo blastocyst nuclei stained with Hoechst.</h3><a id="article1.body1.sec5.supplementary-material2.caption1.p1" name="article1.body1.sec5.supplementary-material2.caption1.p1" class="link-target"></a><p class="preSiDOI">Images are available from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC032/">https://data.broadinstitute.org/bbbc/BBBC032/</a>), as in <a href="#pbio-2005970-g002">Fig 2A</a> of the main paper. (A) Original 3D image of blastocyst nuclei prior to analysis. (B) Evaluation of CellProfiler 3.0 performance in comparison to the MorphoLibJ plugin in Fiji software. Both were compared to manually annotated ground truth using CellProfiler’s MeasureImageOverlap module. (C) CellProfiler 3.0 image processing modules used for blastocyst nuclei segmentation. (D) Ground truth obtained by manual annotation of each Z-slice using GIMP software. (E) Image processing done using Fiji’s MorphoLibJ plugin (macro code is presented in <a href="#pbio.2005970.s010">S1 Table</a>). <em>Images were obtained using PerkinElmer Ultraview VoX spinning disk microscope with a 63× immersion objective (distance between Z-slices = 0</em>.<em>5</em> μ<em>m) and provided by Javier Frias Aldeguer and Nicolas Rivron from Hubrecht Institute</em>, <em>Netherlands</em>. 3D, three-dimensional.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s002">https://doi.org/10.1371/journal.pbio.2005970.s002</a></p><a id="article1.body1.sec5.supplementary-material2.caption1.p2" name="article1.body1.sec5.supplementary-material2.caption1.p2" class="link-target"></a><p class="postSiDOI">(JPG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s003" id="pbio.2005970.s003" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s003">S3 Fig. </a>Segmentation steps for the analysis of mouse trophoblast stem cell nuclei stained with Hoechst.</h3><a id="article1.body1.sec5.supplementary-material3.caption1.p1" name="article1.body1.sec5.supplementary-material3.caption1.p1" class="link-target"></a><p class="preSiDOI">Images are available from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC033/">https://data.broadinstitute.org/bbbc/BBBC033/</a>), as in <a href="#pbio-2005970-g002">Fig 2B</a> of the main paper. (A) Original 3D stem cell nuclei image prior to analysis. (B) Evaluation of CellProfiler 3.0 performance in comparison to the MorphoLibJ plugin in Fiji software. Both were compared to manually annotated ground truth using CellProfiler’s MeasureImageOverlap module. (C) CellProfiler 3.0 image processing modules used for stem cell nuclei. (D) Ground truth obtained by manual annotation of each Z-slice using GIMP software. (E) Image processing done using Fiji’s MorphoLibJ plugin (macro code is presented in <a href="#pbio.2005970.s010">S1 Table</a>). <em>Images were obtained using a PerkinElmer Ultraview VoX spinning disk microscope with a 63× oil immersion objective (distance between Z-slices = 0</em>.<em>5</em> μ<em>m) and provided by Javier Frias Aldeguer and Nicolas Rivron from Hubrecht Institute</em>, <em>Netherlands</em>, <em>and ground truth was annotated by Li Linfeng from MERLN Institute</em>, <em>Netherlands</em>. 3D, three-dimensional.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s003">https://doi.org/10.1371/journal.pbio.2005970.s003</a></p><a id="article1.body1.sec5.supplementary-material3.caption1.p2" name="article1.body1.sec5.supplementary-material3.caption1.p2" class="link-target"></a><p class="postSiDOI">(JPG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s004" id="pbio.2005970.s004" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s004">S4 Fig. </a>Segmentation steps for the analysis of synthetic images depicting HL60 cell line nuclei.</h3><a id="article1.body1.sec5.supplementary-material4.caption1.p1" name="article1.body1.sec5.supplementary-material4.caption1.p1" class="link-target"></a><p class="preSiDOI">Images are available from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC024/">https://data.broadinstitute.org/bbbc/BBBC024/</a>), as in <a href="#pbio-2005970-g002">Fig 2C</a> of the main paper. Synthetic images with 75% clustering probability and low SNR were chosen for analysis. The data set was generated using CytoPacq [<a href="#pbio.2005970.ref012" class="ref-tip">12</a>] set up to simulate a Zeiss Axiovert S100 microscope (objective Zeiss 63×/1.40 Oil DIC) attached to confocal unit Atto CARV and CCD camera Micromax 1300-YHS. (A) Original 3D image of HL60 nuclei prior to analysis. (B) Evaluation of CellProfiler 3.0 performance in comparison to the MorphoLibJ plugin in Fiji software. Both were compared to manually annotated ground truth using CellProfiler’s MeasureImageOverlap module. (C) CellProfiler 3.0 image processing modules used for HL60 cell nucleus segmentation. (D) Computer-generated ground truth. (E) Image processing done using Fiji’s MorphoLibJ plugin (macro code is presented in <a href="#pbio.2005970.s010">S1 Table</a>). 3D, three-dimensional; CCD, charge-coupled device; SNR, signal-to-noise ratio.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s004">https://doi.org/10.1371/journal.pbio.2005970.s004</a></p><a id="article1.body1.sec5.supplementary-material4.caption1.p2" name="article1.body1.sec5.supplementary-material4.caption1.p2" class="link-target"></a><p class="postSiDOI">(JPG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s005" id="pbio.2005970.s005" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s005">S5 Fig. </a>Segmentation steps for the analysis of synthetic images from the cell tracking challenge (<a href="http://www.celltrackingchallenge.net/">http://www.celltrackingchallenge.net</a>) depicting HL60 cell line nuclei.</h3><a id="article1.body1.sec5.supplementary-material5.caption1.p1" name="article1.body1.sec5.supplementary-material5.caption1.p1" class="link-target"></a><p class="preSiDOI">Images are taken from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC035/">https://data.broadinstitute.org/bbbc/BBBC035/</a>), as in <a href="#pbio-2005970-g002">Fig 2D</a> of the main paper. (A) Original 3D image of HL60 nuclei prior to analysis. (B) CellProfiler 3.0 image processing modules used for HL60 cell nucleus segmentation. (C) Watershed obtained using Fiji’s MorphoLibJ plugin (macro code is presented in <a href="#pbio.2005970.s010">S1 Table</a>). (D) Computer-generated ground truth. (E) Number of identified nuclei in six 3D images representing six different time points. (F) Evaluation of CellProfiler 3.0 performance (average and standard deviation of six images) in comparison to Fiji’s MorphoLibJ plugin. Both were compared to manually annotated ground truth using CellProfiler’s MeasureImageOverlap module. <em>The data set was created by Vladimir Ulman and David Svoboda (Masaryk University</em>, <em>Czech Republic) using MitoGen</em>, <em>part of CytoPacq</em> <em>[<a href="#pbio.2005970.ref012" class="ref-tip">12</a>]</em>, <em>to model a Zeiss Axiovert S100 microscope attached to confocal unit Atto CARV with a Micromax 1300-YHS camera with a Plan-Apochromat 40×/1</em>.<em>3 (oil) objective lens</em> <em>[<a href="#pbio.2005970.ref011" class="ref-tip">11</a>,<a href="#pbio.2005970.ref014" class="ref-tip">14</a>]</em>. 3D, three-dimensional.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s005">https://doi.org/10.1371/journal.pbio.2005970.s005</a></p><a id="article1.body1.sec5.supplementary-material5.caption1.p2" name="article1.body1.sec5.supplementary-material5.caption1.p2" class="link-target"></a><p class="postSiDOI">(JPG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s006" id="pbio.2005970.s006" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s006">S6 Fig. </a>Accuracy of nuclear segmentation using CellProfiler and MorphoLibJ.</h3><a id="article1.body1.sec5.supplementary-material6.caption1.p1" name="article1.body1.sec5.supplementary-material6.caption1.p1" class="link-target"></a><p class="preSiDOI">The fraction of nuclei correctly identified relative to their ground truth was assessed for both CellProfiler (solid line) and MorphoLibJ (dashed line) for the results shown in <a href="#pbio-2005970-g001">Fig 1</a> and <a href="#pbio.2005970.s002">S2</a>–<a href="#pbio.2005970.s005">S5</a> Figs. A nucleus was considered correctly segmented at a given threshold if the intersection of the voxels of the ground truth and segmented nuclear volumes was greater than the threshold times the union of the voxels; small errors in segmentation are tolerated at lower thresholds but not at higher thresholds. CellProfiler met or exceeded the fraction correctly identified for most thresholds for 4 of 5 test images. Images and code needed to reproduce these results are available as <a href="#pbio.2005970.s014">S3 File</a>.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s006">https://doi.org/10.1371/journal.pbio.2005970.s006</a></p><a id="article1.body1.sec5.supplementary-material6.caption1.p2" name="article1.body1.sec5.supplementary-material6.caption1.p2" class="link-target"></a><p class="postSiDOI">(PNG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s007" id="pbio.2005970.s007" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s007">S7 Fig. </a>Segmentation of U2OS cells in images, using the deep learning based ClassifyPixels-Unet plugin.</h3><a id="article1.body1.sec5.supplementary-material7.caption1.p1" name="article1.body1.sec5.supplementary-material7.caption1.p1" class="link-target"></a><p class="preSiDOI">Image is available from the Broad Bioimage Benchmark Collection (<a href="https://data.broadinstitute.org/bbbc/BBBC022/">https://data.broadinstitute.org/bbbc/BBBC022/</a>, filename XMtest_B12_s2_w19F7E0279-D087-4B5E-9899-61971C29CB78.tif, see <a href="#pbio.2005970.s015">S4 File</a>). The U-Net model was trained using 150 manually annotated DAPI images from the same collection. Implementation and training framework is available at <a href="https://github.com/jccaicedo/unet4nuclei">https://github.com/carpenterlab/unet4nuclei</a>. (A) The prediction for the three classes (background, boundary, and nuclei) is calculated for each image. (B) Raw image and nuclei segmentation using ClassifyPixels-Unet and IdentifyPrimaryObjects modules, with objects touching the edge excluded. Pipeline and image available as <a href="#pbio.2005970.s015">S4 File</a>.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s007">https://doi.org/10.1371/journal.pbio.2005970.s007</a></p><a id="article1.body1.sec5.supplementary-material7.caption1.p2" name="article1.body1.sec5.supplementary-material7.caption1.p2" class="link-target"></a><p class="postSiDOI">(PNG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s008" id="pbio.2005970.s008" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s008">S8 Fig. </a>Distributed-CellProfiler enables processing thousands of images in parallel.</h3><a id="article1.body1.sec5.supplementary-material8.caption1.p1" name="article1.body1.sec5.supplementary-material8.caption1.p1" class="link-target"></a><p class="preSiDOI">A data set of seventeen 384-well plates was processed using Distributed-CellProfiler on an AWS cluster. Each plate comprised 3,456 five-channel images (2,160 × 2,160 pixels). A CellProfiler pipeline was run on each image to identify cells and then extract measurements per cell. In all, 12,415,665 cells were identified, and 2,191 measurements were made per cell. It would have taken more than five months to analyze the data set using a single machine with 16 vCPUs. Using a cluster of 195 such machines on AWS, this data set was processed in less than 21 hours and cost $765 in total. The graph shows the number of pending images over the 21-hour period of processing this data set. The configuration files used to process this data set are provided in <a href="#pbio.2005970.s016">S5 File</a>). AWS, Amazon Web Services; vCPU, virtual central processing unit.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s008">https://doi.org/10.1371/journal.pbio.2005970.s008</a></p><a id="article1.body1.sec5.supplementary-material8.caption1.p2" name="article1.body1.sec5.supplementary-material8.caption1.p2" class="link-target"></a><p class="postSiDOI">(PNG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s009" id="pbio.2005970.s009" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s009">S9 Fig. </a>Comparison of runtimes between CellProfiler 3.0 and CellProfiler 2.2.</h3><a id="article1.body1.sec5.supplementary-material9.caption1.p1" name="article1.body1.sec5.supplementary-material9.caption1.p1" class="link-target"></a><p class="preSiDOI">(Toward the left: CellProfiler 3.0 is faster; toward the right: CellProfiler 2.2 is faster). We compared the performance of example pipelines (available at <a href="https://github.com/CellProfiler/examples">https://github.com/CellProfiler/examples</a> and <a href="http://cellprofiler.org">http://cellprofiler.org</a>) for CellProfiler 2.2 and 3.0 on OS X 10.12.6 (2.8 GHz Intel Core i7 and 16 GB 1600 MHz DDR3.). The figure above shows the difference of mean runtimes between CellProfiler 3.0 and 2.2 across 10 identical image sets. CellProfiler 3.0 demonstrates improved or comparable performance to CellProfiler 2.2 in 11 of 16 example pipelines, and these represent the more commonly used applications.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s009">https://doi.org/10.1371/journal.pbio.2005970.s009</a></p><a id="article1.body1.sec5.supplementary-material9.caption1.p2" name="article1.body1.sec5.supplementary-material9.caption1.p2" class="link-target"></a><p class="postSiDOI">(PNG)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s010" id="pbio.2005970.s010" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s010">S1 Table. </a>Fiji macros used for each file.</h3><a id="article1.body1.sec5.supplementary-material10.caption1.p1" name="article1.body1.sec5.supplementary-material10.caption1.p1" class="link-target"></a><p class="preSiDOI">Macro code constructed in the MorphoLibJ plugin for Fiji software that was used for analysis of 3D image examples presented in <a href="#pbio-2005970-g001">Fig 1</a> and <a href="#pbio.2005970.s002">S2</a>–<a href="#pbio.2005970.s005">S5</a> Figs.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s010">https://doi.org/10.1371/journal.pbio.2005970.s010</a></p><a id="article1.body1.sec5.supplementary-material10.caption1.p2" name="article1.body1.sec5.supplementary-material10.caption1.p2" class="link-target"></a><p class="postSiDOI">(XLSX)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s011" id="pbio.2005970.s011" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s011">S2 Table. </a>Image segmentation speed comparison of CellProfiler and the MorphoLibJ 1.3.3 plugin in Fiji (ImageJ 1.51n) on x-64 PC (Dell 7280) Windows 10 Pro (2.8 GHz Intel Core i7-7600U CPU and 16 GB 2133 MHz DDR4 SDRAM).</h3><a id="article1.body1.sec5.supplementary-material11.caption1.p1" name="article1.body1.sec5.supplementary-material11.caption1.p1" class="link-target"></a><p class="preSiDOI">Units of time are in seconds. One image representing the 72-hour time point (72 hours) was used to compare CellProfiler 3.0 and Fiji presented in <a href="#pbio.2005970.s005">S5 Fig</a>.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s011">https://doi.org/10.1371/journal.pbio.2005970.s011</a></p><a id="article1.body1.sec5.supplementary-material11.caption1.p2" name="article1.body1.sec5.supplementary-material11.caption1.p2" class="link-target"></a><p class="postSiDOI">(XLSX)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s012" id="pbio.2005970.s012" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s012">S1 File. </a>CellProfiler measurements of mouse blastocysts.</h3><a id="article1.body1.sec5.supplementary-material12.caption1.p1" name="article1.body1.sec5.supplementary-material12.caption1.p1" class="link-target"></a><p class="preSiDOI">Measurements of mouse blastocyst cells and GAPDH transcript foci created by CellProfiler; these serve as the underlying data for <a href="#pbio-2005970-g003">Fig 3F</a>. GAPDH, glyceraldehyde 3-phosphate dehydrogenase.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s012">https://doi.org/10.1371/journal.pbio.2005970.s012</a></p><a id="article1.body1.sec5.supplementary-material12.caption1.p2" name="article1.body1.sec5.supplementary-material12.caption1.p2" class="link-target"></a><p class="postSiDOI">(XLSX)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s013" id="pbio.2005970.s013" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s013">S2 File. </a>CellProfiler measurements of hiPSCs.</h3><a id="article1.body1.sec5.supplementary-material13.caption1.p1" name="article1.body1.sec5.supplementary-material13.caption1.p1" class="link-target"></a><p class="preSiDOI">Per cell measurements of hiPSCs created by CellProfiler; these serve as the underlying data for <a href="#pbio-2005970-g004">Fig 4D</a>. hiPSC, human induced pluripotent stem cell.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s013">https://doi.org/10.1371/journal.pbio.2005970.s013</a></p><a id="article1.body1.sec5.supplementary-material13.caption1.p2" name="article1.body1.sec5.supplementary-material13.caption1.p2" class="link-target"></a><p class="postSiDOI">(XLSX)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s014" id="pbio.2005970.s014" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s014">S3 File. </a>Code to asses per-object segmentation accuracy in CellProfiler and MorphoLibJ.</h3><a id="article1.body1.sec5.supplementary-material14.caption1.p1" name="article1.body1.sec5.supplementary-material14.caption1.p1" class="link-target"></a><p class="preSiDOI">A file to reproduce the results presented in <a href="#pbio.2005970.s006">S6 Fig</a>. This contains the ground truth images, CellProfiler-produced segmentations, and MorphoLibJ-produced segmentations, as well as a Jupyter notebook that can be run from the directory once unzipped to replicate the code.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s014">https://doi.org/10.1371/journal.pbio.2005970.s014</a></p><a id="article1.body1.sec5.supplementary-material14.caption1.p2" name="article1.body1.sec5.supplementary-material14.caption1.p2" class="link-target"></a><p class="postSiDOI">(ZIP)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s015" id="pbio.2005970.s015" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s015">S4 File. </a>Example pipeline and nuclei image for deep learning in CellProfiler 3.0.</h3><a id="article1.body1.sec5.supplementary-material15.caption1.p1" name="article1.body1.sec5.supplementary-material15.caption1.p1" class="link-target"></a><p class="preSiDOI">Example pipeline and image needed to run the ClassifyPixels-Unet module.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s015">https://doi.org/10.1371/journal.pbio.2005970.s015</a></p><a id="article1.body1.sec5.supplementary-material15.caption1.p2" name="article1.body1.sec5.supplementary-material15.caption1.p2" class="link-target"></a><p class="postSiDOI">(ZIP)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s016" id="pbio.2005970.s016" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s016">S5 File. </a>Example pipelines and configuration files needed to run CellProfiler on AWS.</h3><a id="article1.body1.sec5.supplementary-material16.caption1.p1" name="article1.body1.sec5.supplementary-material16.caption1.p1" class="link-target"></a><p class="preSiDOI">These pipelines and files can be used to run Distributed-CellProfiler; they are specifically configured to run the Cell Painting assay [<a href="#pbio.2005970.ref007" class="ref-tip">7</a>]. AWS, Amazon Web Services.</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s016">https://doi.org/10.1371/journal.pbio.2005970.s016</a></p><a id="article1.body1.sec5.supplementary-material16.caption1.p2" name="article1.body1.sec5.supplementary-material16.caption1.p2" class="link-target"></a><p class="postSiDOI">(ZIP)</p> </div><div class="supplementary-material"><a name="pbio.2005970.s017" id="pbio.2005970.s017" class="link-target"></a><h3 class="siTitle title-small"><a href="article/file?type=supplementary&id=10.1371/journal.pbio.2005970.s017">S6 File. </a>CellProfiler 3D module run times.</h3><a id="article1.body1.sec5.supplementary-material17.caption1.p1" name="article1.body1.sec5.supplementary-material17.caption1.p1" class="link-target"></a><p class="preSiDOI">CPU and wall-clock runtimes for individual CellProfiler modules in the example pipelines; the summary of this data can be seen in <a href="#pbio.2005970.s011">S2 Table</a>. 3D, three-dimensional; CPU, central processing unit</p> <p class="siDoi"><a href="https://doi.org/10.1371/journal.pbio.2005970.s017">https://doi.org/10.1371/journal.pbio.2005970.s017</a></p><a id="article1.body1.sec5.supplementary-material17.caption1.p2" name="article1.body1.sec5.supplementary-material17.caption1.p2" class="link-target"></a><p class="postSiDOI">(XLSX)</p> </div></div> <div xmlns:plos="http://plos.org" class="section toc-section"><a id="ack" name="ack" data-toc="ack" title="Acknowledgments" class="link-target"></a><h2>Acknowledgments</h2> <a id="article1.back1.ack1.p1" name="article1.back1.ack1.p1" class="link-target"></a><p>The authors would like to thank all members of the Carpenter lab for their input on CellProfiler and this manuscript, as well as the CellProfiler community for its many helpful contributions via GitHub and the CellProfiler forum. The authors would also like to thank Javier Frias Aldeguer and Nicolas Rivron from Hubrecht Institute and Li Linfeng from MERLN Institute for providing 3D blastocyst and trophoblast images, and Vladimir Ulman and David Svoboda from Masaryk University for providing synthetic 3D images of HL60 cell line nuclei.</p> <a id="article1.back1.ack1.p2" name="article1.back1.ack1.p2" class="link-target"></a><p>We wish to acknowledge the Assay Development and Microscopy Pipeline teams at the Allen Institute for Cell Science for their contributions to the generation of the hiPSC image data shown in this work. We thank Matthew Bowden from the Allen Institute for Cell Science for his many valuable contributions to the CellProfiler codebase. We thank the Allen Institute for Cell Science founder, Paul G. Allen, for his vision, encouragement, and support.</p> </div><div xmlns:plos="http://plos.org" class="toc-section"><a id="references" name="references" class="link-target" data-toc="references" title="References"></a><h2>References</h2><ol class="references"><li id="ref1"><span class="order">1. </span><a name="pbio.2005970.ref001" id="pbio.2005970.ref001" class="link-target"></a>Eliceiri KW, Berthold MR, Goldberg IG, Ibáñez L, Manjunath BS, Martone ME, et al. Biological imaging software tools. Nat Methods. 2012;9: 697–710. pmid:22743775 <ul class="reflinks" data-doi="10.1038/nmeth.2084"><li><a href="https://doi.org/10.1038/nmeth.2084" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/22743775" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Biological+imaging+software+tools+Eliceiri+2012" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref2"><span class="order">2. </span><a name="pbio.2005970.ref002" id="pbio.2005970.ref002" class="link-target"></a>Rueden CT, Schindelin J, Hiner MC, DeZonia BE, Walter AE, Arena ET, et al. ImageJ2: ImageJ for the next generation of scientific image data. BMC Bioinformatics. 2017;18: 529. pmid:29187165 <ul class="reflinks" data-doi="10.1186/s12859-017-1934-z"><li><a href="https://doi.org/10.1186/s12859-017-1934-z" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/29187165" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=ImageJ2%3A+ImageJ+for+the+next+generation+of+scientific+image+data+Rueden+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref3"><span class="order">3. </span><a name="pbio.2005970.ref003" id="pbio.2005970.ref003" class="link-target"></a>Fillbrunn A, Dietz C, Pfeuffer J, Rahn R, Landrum GA, Berthold MR. KNIME for reproducible cross-domain analysis of life science data. J Biotechnol. 2017;261: 149–156. pmid:28757290 <ul class="reflinks" data-doi="10.1016/j.jbiotec.2017.07.028"><li><a href="https://doi.org/10.1016/j.jbiotec.2017.07.028" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/28757290" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=KNIME+for+reproducible+cross-domain+analysis+of+life+science+data+Fillbrunn+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref4"><span class="order">4. </span><a name="pbio.2005970.ref004" id="pbio.2005970.ref004" class="link-target"></a>Carpenter AE, Jones TR, Lamprecht MR, Clarke C, Kang IH, Friman O, et al. CellProfiler: image analysis software for identifying and quantifying cell phenotypes. Genome Biol. 2006;7: R100. pmid:17076895 <ul class="reflinks" data-doi="10.1186/gb-2006-7-10-r100"><li><a href="https://doi.org/10.1186/gb-2006-7-10-r100" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/17076895" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=CellProfiler%3A+image+analysis+software+for+identifying+and+quantifying+cell+phenotypes+Carpenter+2006" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref5"><span class="order">5. </span><a name="pbio.2005970.ref005" id="pbio.2005970.ref005" class="link-target"></a>Kamentsky L, Jones TR, Fraser A, Bray M-A, Logan DJ, Madden KL, et al. Improved structure, function and compatibility for CellProfiler: modular high-throughput image analysis software. Bioinformatics. 2011;27: 1179–1180. pmid:21349861 <ul class="reflinks" data-doi="10.1093/bioinformatics/btr095"><li><a href="https://doi.org/10.1093/bioinformatics/btr095" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/21349861" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Improved+structure%2C+function+and+compatibility+for+CellProfiler%3A+modular+high-throughput+image+analysis+software+Kamentsky+2011" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref6"><span class="order">6. </span><a name="pbio.2005970.ref006" id="pbio.2005970.ref006" class="link-target"></a>Wiesmann V, Franz D, Held C, Munzenmayer C, Palmisano R, Wittenberg T. Review of free software tools for image analysis of fluorescence cell micrographs. J Microsc. 2015;257: 39–53. pmid:25359577 <ul class="reflinks" data-doi="10.1111/jmi.12184"><li><a href="https://doi.org/10.1111/jmi.12184" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/25359577" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Review+of+free+software+tools+for+image+analysis+of+fluorescence+cell+micrographs+Wiesmann+2015" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref7"><span class="order">7. </span><a name="pbio.2005970.ref007" id="pbio.2005970.ref007" class="link-target"></a>Bray M- A, Singh S, Han H, Davis CT, Borgeson B, Hartland C, et al. Cell Painting, a high-content image-based assay for morphological profiling using multiplexed fluorescent dyes. Nat Protoc. 2016;11: 1757–1774. pmid:27560178 <ul class="reflinks" data-doi="10.1038/nprot.2016.105"><li><a href="https://doi.org/10.1038/nprot.2016.105" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/27560178" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Cell+Painting%2C+a+high-content+image-based+assay+for+morphological+profiling+using+multiplexed+fluorescent+dyes+Bray+M-+2016" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref8"><span class="order">8. </span><a name="pbio.2005970.ref008" id="pbio.2005970.ref008" class="link-target"></a>Rohban MH, Singh S, Wu X, Berthet JB, Bray M-A, Shrestha Y, et al. Systematic morphological profiling of human gene and allele function via Cell Painting. Elife. 2017;6. pmid:28315521 <ul class="reflinks" data-doi="10.7554/eLife.24060"><li><a href="https://doi.org/10.7554/eLife.24060" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/28315521" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Systematic+morphological+profiling+of+human+gene+and+allele+function+via+Cell+Painting+Rohban+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref9"><span class="order">9. </span><a name="pbio.2005970.ref009" id="pbio.2005970.ref009" class="link-target"></a>Caicedo JC, Singh S, Carpenter AE. Applications in image-based profiling of perturbations. Curr Opin Biotechnol. 2016;39: 134–142. pmid:27089218 <ul class="reflinks" data-doi="10.1016/j.copbio.2016.04.003"><li><a href="https://doi.org/10.1016/j.copbio.2016.04.003" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/27089218" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Applications+in+image-based+profiling+of+perturbations+Caicedo+2016" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref10"><span class="order">10. </span><a name="pbio.2005970.ref010" id="pbio.2005970.ref010" class="link-target"></a>Long F, Zhou J, Peng H. Visualization and Analysis of 3D Microscopic Images. PLoS Comput Biol. Public Library of Science; 2012;8: e1002519. pmid:22719236 <ul class="reflinks" data-doi="10.1371/journal.pcbi.1002519"><li><a href="https://doi.org/10.1371/journal.pcbi.1002519" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/22719236" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Visualization+and+Analysis+of+3D+Microscopic+Images+Long+2012" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref11"><span class="order">11. </span><a name="pbio.2005970.ref011" id="pbio.2005970.ref011" class="link-target"></a>Svoboda D, Ulman V. MitoGen: A Framework for Generating 3D Synthetic Time-Lapse Sequences of Cell Populations in Fluorescence Microscopy. IEEE Trans Med Imaging. 2017;36: 310–321. pmid:27623575 <ul class="reflinks" data-doi="10.1109/TMI.2016.2606545"><li><a href="https://doi.org/10.1109/TMI.2016.2606545" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/27623575" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=MitoGen%3A+A+Framework+for+Generating+3D+Synthetic+Time-Lapse+Sequences+of+Cell+Populations+in+Fluorescence+Microscopy+Svoboda+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref12"><span class="order">12. </span><a name="pbio.2005970.ref012" id="pbio.2005970.ref012" class="link-target"></a>Svoboda D, Kozubek M, Stejskal S. Generation of digital phantoms of cell nuclei and simulation of image formation in 3D image cytometry. Cytometry A. 2009;75: 494–509. pmid:19291805 <ul class="reflinks" data-doi="10.1002/cyto.a.20714"><li><a href="https://doi.org/10.1002/cyto.a.20714" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/19291805" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Generation+of+digital+phantoms+of+cell+nuclei+and+simulation+of+image+formation+in+3D+image+cytometry+Svoboda+2009" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref13"><span class="order">13. </span><a name="pbio.2005970.ref013" id="pbio.2005970.ref013" class="link-target"></a>Rand WM. Objective Criteria for the Evaluation of Clustering Methods. J Am Stat Assoc. Taylor & Francis; 1971;66: 846–850. <ul class="reflinks"><li><a href="#" data-author="Rand" data-cit="RandWM.%20Objective%20Criteria%20for%20the%20Evaluation%20of%20Clustering%20Methods.%20J%20Am%20Stat%20Assoc.%20Taylor%20%26%20Francis%3B%201971%3B66%3A%20846%E2%80%93850." data-title="Objective%20Criteria%20for%20the%20Evaluation%20of%20Clustering%20Methods" target="_new" title="Go to article in CrossRef"> View Article </a></li><li><a href="http://scholar.google.com/scholar?q=Objective+Criteria+for+the+Evaluation+of+Clustering+Methods+Rand+1971" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref14"><span class="order">14. </span><a name="pbio.2005970.ref014" id="pbio.2005970.ref014" class="link-target"></a>Ulman V, Maška M, Magnusson KEG, Ronneberger O, Haubold C, Harder N, et al. An objective comparison of cell-tracking algorithms. Nat Methods. 2017;14: 1141–1152. pmid:29083403 <ul class="reflinks" data-doi="10.1038/nmeth.4473"><li><a href="https://doi.org/10.1038/nmeth.4473" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/29083403" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=An+objective+comparison+of+cell-tracking+algorithms+Ulman+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref15"><span class="order">15. </span><a name="pbio.2005970.ref015" id="pbio.2005970.ref015" class="link-target"></a>Ljosa V, Sokolnicki KL, Carpenter AE. Annotated high-throughput microscopy image sets for validation. Nat Methods. 2012;9: 637. pmid:22743765 <ul class="reflinks" data-doi="10.1038/nmeth.2083"><li><a href="https://doi.org/10.1038/nmeth.2083" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/22743765" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Annotated+high-throughput+microscopy+image+sets+for+validation+Ljosa+2012" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref16"><span class="order">16. </span><a name="pbio.2005970.ref016" id="pbio.2005970.ref016" class="link-target"></a>LeCun Y, Bengio Y, Hinton G. Deep learning. Nature. 2015;521: 436–444. pmid:26017442 <ul class="reflinks" data-doi="10.1038/nature14539"><li><a href="https://doi.org/10.1038/nature14539" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/26017442" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Deep+learning+LeCun+2015" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref17"><span class="order">17. </span><a name="pbio.2005970.ref017" id="pbio.2005970.ref017" class="link-target"></a>Krizhevsky A, Sutskever I, Hinton GE. ImageNet Classification with Deep Convolutional Neural Networks. In: Pereira F, Burges CJC, Bottou L, Weinberger KQ, editors. Advances in Neural Information Processing Systems 25. Curran Associates, Inc.; 2012. pp. 1097–1105. <ul class="find-nolinks"></ul></li><li id="ref18"><span class="order">18. </span><a name="pbio.2005970.ref018" id="pbio.2005970.ref018" class="link-target"></a>Ronneberger O, Fischer P, Brox T. U-Net: Convolutional Networks for Biomedical Image Segmentation. Medical Image Computing and Computer-Assisted Intervention–MICCAI 2015. Springer International Publishing; 2015. pp. 234–241. <ul class="reflinks"><li><a href="#" data-author="Ronneberger" data-cit="RonnebergerO%2C%20FischerP%2C%20BroxT.%20U-Net%3A%20Convolutional%20Networks%20for%20Biomedical%20Image%20Segmentation.%20Medical%20Image%20Computing%20and%20Computer-Assisted%20Intervention%E2%80%93MICCAI%202015.%20Springer%20International%20Publishing%3B%202015.%20pp.%20234%E2%80%93241." data-title="U-Net%3A%20Convolutional%20Networks%20for%20Biomedical%20Image%20Segmentation" target="_new" title="Go to article in CrossRef"> View Article </a></li><li><a href="http://scholar.google.com/scholar?q=U-Net%3A+Convolutional+Networks+for+Biomedical+Image+Segmentation+Ronneberger+2015" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref19"><span class="order">19. </span><a name="pbio.2005970.ref019" id="pbio.2005970.ref019" class="link-target"></a>Abadi M, Barham P, Chen J, Chen Z, Davis A, Dean J, et al. TensorFlow: A System for Large-Scale Machine Learning. OSDI. <a href="http://usenix.org">usenix.org</a>; 2016. pp. 265–283. <ul class="reflinks"><li><a href="#" data-author="Abadi" data-cit="AbadiM%2C%20BarhamP%2C%20ChenJ%2C%20ChenZ%2C%20DavisA%2C%20DeanJ%2C%20et%20al.%20TensorFlow%3A%20A%20System%20for%20Large-Scale%20Machine%20Learning.%20OSDI.%20usenix.org%3B%202016.%20pp.%20265%E2%80%93283." data-title="TensorFlow%3A%20A%20System%20for%20Large-Scale%20Machine%20Learning" target="_new" title="Go to article in CrossRef"> View Article </a></li><li><a href="http://scholar.google.com/scholar?q=TensorFlow%3A+A+System+for+Large-Scale+Machine+Learning+Abadi+2016" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref20"><span class="order">20. </span><a name="pbio.2005970.ref020" id="pbio.2005970.ref020" class="link-target"></a>Jia Y, Shelhamer E, Donahue J, Karayev S, Long J, Girshick R, et al. Caffe: Convolutional Architecture for Fast Feature Embedding. Proceedings of the 22Nd ACM International Conference on Multimedia. New York, NY, USA: ACM; 2014. pp. 675–678. <ul class="find-nolinks"></ul></li><li id="ref21"><span class="order">21. </span><a name="pbio.2005970.ref021" id="pbio.2005970.ref021" class="link-target"></a>Yang SJ, Berndl M, Michael Ando D, Barch M, Narayanaswamy A, Christiansen E, et al. Assessing microscope image focus quality with deep learning. BMC Bioinformatics. 2018;19: 28962. <ul class="reflinks"><li><a href="#" data-author="Yang" data-cit="YangSJ%2C%20BerndlM%2C%20Michael%20AndoD%2C%20BarchM%2C%20NarayanaswamyA%2C%20ChristiansenE%2C%20et%20al.%20Assessing%20microscope%20image%20focus%20quality%20with%20deep%20learning.%20BMC%20Bioinformatics.%202018%3B19%3A%2028962." data-title="Assessing%20microscope%20image%20focus%20quality%20with%20deep%20learning" target="_new" title="Go to article in CrossRef"> View Article </a></li><li><a href="http://scholar.google.com/scholar?q=Assessing+microscope+image+focus+quality+with+deep+learning+Yang+2018" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref22"><span class="order">22. </span><a name="pbio.2005970.ref022" id="pbio.2005970.ref022" class="link-target"></a>Sadanandan SK, Ranefall P, Le Guyader S, Wählby C. Automated Training of Deep Convolutional Neural Networks for Cell Segmentation. Sci Rep. 2017;7: 7860. pmid:28798336 <ul class="reflinks" data-doi="10.1038/s41598-017-07599-6"><li><a href="https://doi.org/10.1038/s41598-017-07599-6" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/28798336" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Automated+Training+of+Deep+Convolutional+Neural+Networks+for+Cell+Segmentation+Sadanandan+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref23"><span class="order">23. </span><a name="pbio.2005970.ref023" id="pbio.2005970.ref023" class="link-target"></a>Sakurai Y, Kolokoltsov AA, Chen C-C, Tidwell MW, Bauta WE, Klugbauer N, et al. Ebola virus. Two-pore channels control Ebola virus host cell entry and are drug targets for disease treatment. Science. 2015;347: 995–998. pmid:25722412 <ul class="reflinks" data-doi="10.1126/science.1258758"><li><a href="https://doi.org/10.1126/science.1258758" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/25722412" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Ebola+virus.+Two-pore+channels+control+Ebola+virus+host+cell+entry+and+are+drug+targets+for+disease+treatment+Sakurai+2015" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref24"><span class="order">24. </span><a name="pbio.2005970.ref024" id="pbio.2005970.ref024" class="link-target"></a>Stanley SA, Barczak AK, Silvis MR, Luo SS, Sogi K, Vokes M, et al. Identification of host-targeted small molecules that restrict intracellular Mycobacterium tuberculosis growth. PLoS Pathog. 2014;10: e1003946. pmid:24586159 <ul class="reflinks" data-doi="10.1371/journal.ppat.1003946"><li><a href="https://doi.org/10.1371/journal.ppat.1003946" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/24586159" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Identification+of+host-targeted+small+molecules+that+restrict+intracellular+Mycobacterium+tuberculosis+growth+Stanley+2014" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref25"><span class="order">25. </span><a name="pbio.2005970.ref025" id="pbio.2005970.ref025" class="link-target"></a>Wen Q, Goldenson B, Silver SJ, Schenone M, Dancik V, Huang Z, et al. Identification of regulators of polyploidization presents therapeutic targets for treatment of AMKL. Cell. 2012;150: 575–589. pmid:22863010 <ul class="reflinks" data-doi="10.1016/j.cell.2012.06.032"><li><a href="https://doi.org/10.1016/j.cell.2012.06.032" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/22863010" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Identification+of+regulators+of+polyploidization+presents+therapeutic+targets+for+treatment+of+AMKL+Wen+2012" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref26"><span class="order">26. </span><a name="pbio.2005970.ref026" id="pbio.2005970.ref026" class="link-target"></a>Hartwell KA, Miller PG, Mukherjee S, Kahn AR, Stewart AL, Logan DJ, et al. Niche-based screening identifies small-molecule inhibitors of leukemia stem cells. Nat Chem Biol. 2013;9: 840–848. pmid:24161946 <ul class="reflinks" data-doi="10.1038/nchembio.1367"><li><a href="https://doi.org/10.1038/nchembio.1367" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/24161946" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Niche-based+screening+identifies+small-molecule+inhibitors+of+leukemia+stem+cells+Hartwell+2013" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref27"><span class="order">27. </span><a name="pbio.2005970.ref027" id="pbio.2005970.ref027" class="link-target"></a>Gibson CC, Zhu W, Davis CT, Bowman-Kirigin JA, Chan AC, Ling J, et al. Strategy for identifying repurposed drugs for the treatment of cerebral cavernous malformation. Circulation. 2015;131: 289–299. pmid:25486933 <ul class="reflinks" data-doi="10.1161/CIRCULATIONAHA.114.010403"><li><a href="https://doi.org/10.1161/CIRCULATIONAHA.114.010403" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/25486933" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Strategy+for+identifying+repurposed+drugs+for+the+treatment+of+cerebral+cavernous+malformation+Gibson+2015" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref28"><span class="order">28. </span><a name="pbio.2005970.ref028" id="pbio.2005970.ref028" class="link-target"></a>Snijder B, Vladimer GI, Krall N, Miura K, Schmolke A- S, Kornauth C, et al. Image-based ex-vivo drug screening for patients with aggressive haematological malignancies: interim results from a single-arm, open-label, pilot study. Lancet Haematol. 2017;4: e595–e606. pmid:29153976 <ul class="reflinks" data-doi="10.1016/S2352-3026(17)30208-9"><li><a href="https://doi.org/10.1016/S2352-3026(17)30208-9" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/29153976" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Image-based+ex-vivo+drug+screening+for+patients+with+aggressive+haematological+malignancies%3A+interim+results+from+a+single-arm%2C+open-label%2C+pilot+study+Snijder+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref29"><span class="order">29. </span><a name="pbio.2005970.ref029" id="pbio.2005970.ref029" class="link-target"></a>Pennisi E. IMAGING. “Cell painting” highlights responses to drugs and toxins. Science. 2016;352: 877–878. pmid:27199393 <ul class="reflinks" data-doi="10.1126/science.352.6288.877"><li><a href="https://doi.org/10.1126/science.352.6288.877" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/27199393" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=IMAGING.+%E2%80%9CCell+painting%E2%80%9D+highlights+responses+to+drugs+and+toxins+Pennisi+2016" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref30"><span class="order">30. </span><a name="pbio.2005970.ref030" id="pbio.2005970.ref030" class="link-target"></a>Caicedo JC, Cooper S, Heigwer F, Warchal S, Qiu P, Molnar C, et al. Data-analysis strategies for image-based cell profiling. Nat Methods. 2017;14: 849–863. pmid:28858338 <ul class="reflinks" data-doi="10.1038/nmeth.4397"><li><a href="https://doi.org/10.1038/nmeth.4397" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/28858338" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Data-analysis+strategies+for+image-based+cell+profiling+Caicedo+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref31"><span class="order">31. </span><a name="pbio.2005970.ref031" id="pbio.2005970.ref031" class="link-target"></a>Dao D, Fraser AN, Hung J, Ljosa V, Singh S, Carpenter AE. CellProfiler Analyst: interactive data exploration, analysis and classification of large biological image sets. Bioinformatics. 2016; pmid:27354701 <ul class="reflinks" data-doi="10.1093/bioinformatics/btw390"><li><a href="https://doi.org/10.1093/bioinformatics/btw390" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/27354701" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=CellProfiler+Analyst%3A+interactive+data+exploration%2C+analysis+and+classification+of+large+biological+image+sets+Dao+2016" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref32"><span class="order">32. </span><a name="pbio.2005970.ref032" id="pbio.2005970.ref032" class="link-target"></a>Ching T, Himmelstein DS, Beaulieu-Jones BK, Kalinin AA, Do BT, Way GP, et al. Opportunities And Obstacles For Deep Learning In Biology And Medicine [Internet]. bioRxiv. 2017. p. 142760. <ul class="reflinks" data-doi="10.1101/142760"><li><a href="https://doi.org/10.1101/142760" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://scholar.google.com/scholar?q=Opportunities+And+Obstacles+For+Deep+Learning+In+Biology+And+Medicine+Ching+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref33"><span class="order">33. </span><a name="pbio.2005970.ref033" id="pbio.2005970.ref033" class="link-target"></a>Rivron NC, Frias-Aldeguer J, Vrij EJ, Boisset J-C, Korving J, Vivié J, et al. Blastocyst-like structures generated solely from stem cells. Nature. 2018;557: 106–111. pmid:29720634 <ul class="reflinks" data-doi="10.1038/s41586-018-0051-0"><li><a href="https://doi.org/10.1038/s41586-018-0051-0" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/29720634" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Blastocyst-like+structures+generated+solely+from+stem+cells+Rivron+2018" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li><li id="ref34"><span class="order">34. </span><a name="pbio.2005970.ref034" id="pbio.2005970.ref034" class="link-target"></a>Roberts B, Haupt A, Tucker A, Grancharova T, Arakaki J, Fuqua MA, et al. Systematic gene tagging using CRISPR/Cas9 in human stem cells to illuminate cell organization. Mol Biol Cell. 2017;28: 2854–2874. pmid:28814507 <ul class="reflinks" data-doi="10.1091/mbc.E17-03-0209"><li><a href="https://doi.org/10.1091/mbc.E17-03-0209" data-author="doi-provided" data-cit="doi-provided" data-title="doi-provided" target="_new" title="Go to article"> View Article </a></li><li><a href="http://www.ncbi.nlm.nih.gov/pubmed/28814507" target="_new" title="Go to article in PubMed"> PubMed/NCBI </a></li><li><a href="http://scholar.google.com/scholar?q=Systematic+gene+tagging+using+CRISPR%2FCas9+in+human+stem+cells+to+illuminate+cell+organization+Roberts+2017" target="_new" title="Go to article in Google Scholar"> Google Scholar </a></li></ul></li></ol></div> <div class="ref-tooltip"> <div class="ref_tooltip-content"> </div> </div> </div> </div> </div> </section> <aside class="article-aside"> <!--[if IE 9]> <style> .dload-xml {margin-top: 38px} </style> <![endif]--> <div class="dload-menu"> <div class="dload-pdf"> <a href="/plosbiology/article/file?id=10.1371/journal.pbio.2005970&type=printable" id="downloadPdf" target="_blank">Download PDF</a> </div> <div data-js-tooltip-hover="trigger" class="dload-hover"> <ul class="dload-xml" data-js-tooltip-hover="target"> <li><a href="/plosbiology/article/citation?id=10.1371/journal.pbio.2005970" id="downloadCitation">Citation</a></li> <li><a href="/plosbiology/article/file?id=10.1371/journal.pbio.2005970&type=manuscript" id="downloadXml">XML</a> </li> </ul> </div> </div> <div class="aside-container"> <div class="print-article" id="printArticle" data-js-tooltip-hover="trigger"> <a href="#" onclick="window.print(); return false;" class="preventDefault" id="printBrowser">Print</a> </div> <div class="share-article" id="shareArticle" data-js-tooltip-hover="trigger"> Share <ul data-js-tooltip-hover="target" class="share-options" id="share-options"> <li><a href="https://www.reddit.com/submit?url=https%3A%2F%2Fdx.plos.org%2F10.1371%2Fjournal.pbio.2005970" id="shareReddit" target="_blank" title="Submit to Reddit"><img src="/resource/img/icon.reddit.16.png" width="16" height="16" alt="Reddit">Reddit</a></li> <li><a href="https://www.facebook.com/share.php?u=https%3A%2F%2Fdx.plos.org%2F10.1371%2Fjournal.pbio.2005970&t=CellProfiler 3.0: Next-generation image processing for biology" id="shareFacebook" target="_blank" title="Share on Facebook"><img src="/resource/img/icon.fb.16.png" width="16" height="16" alt="Facebook">Facebook</a></li> <li><a href="https://www.linkedin.com/shareArticle?url=https%3A%2F%2Fdx.plos.org%2F10.1371%2Fjournal.pbio.2005970&title=CellProfiler 3.0: Next-generation image processing for biology&summary=Checkout this article I found at PLOS" id="shareLinkedIn" target="_blank" title="Add to LinkedIn"><img src="/resource/img/icon.linkedin.16.png" width="16" height="16" alt="LinkedIn">LinkedIn</a></li> <li><a href="https://www.mendeley.com/import/?url=https%3A%2F%2Fdx.plos.org%2F10.1371%2Fjournal.pbio.2005970" id="shareMendeley" target="_blank" title="Add to Mendeley"><img src="/resource/img/icon.mendeley.16.png" width="16" height="16" alt="Mendeley">Mendeley</a></li> <li><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fdx.plos.org%2F10.1371%2Fjournal.pbio.2005970&text=%23PLOSBiology%3A%20CellProfiler 3.0: Next-generation image processing for biology" target="_blank" title="share on Twitter" id="twitter-share-link"><img src="/resource/img/icon.twtr.16.png" width="16" height="16" alt="Twitter">Twitter</a></li> <li><a href="mailto:?subject=CellProfiler 3.0: Next-generation image processing for biology&body=I%20thought%20you%20would%20find%20this%20article%20interesting.%20From%20PLOS Biology:%20https%3A%2F%2Fdx.plos.org%2F10.1371%2Fjournal.pbio.2005970" id="shareEmail" rel="noreferrer" aria-label="Email"><img src="/resource/img/icon.email.16.png" width="16" height="16" alt="Email">Email</a></li> <script src="/resource/js/components/tweet140.js" type="text/javascript"></script> </ul> </div> </div> <!-- Crossmark 2.0 widget --> <script src="https://crossmark-cdn.crossref.org/widget/v2.0/widget.js"></script> <a aria-label="Check for updates via CrossMark" data-target="crossmark"> <img alt="Check for updates via CrossMark" width="150" src="https://crossmark-cdn.crossref.org/widget/v2.0/logos/CROSSMARK_BW_horizontal.svg"> </a> <!-- End Crossmark 2.0 widget --> <div class="related-articles-container"> <h3> Related PLOS Articles </h3> <ul class="related-articles"> <li> <b> has COMPANION </b> </li> <li> <?xml version="1.0" encoding="UTF-8"?>Bioimage informatics: Investing in software usability is essential <ul class="related-article-links"> <li class="related-article-link-page"> <a href="/plosbiology/article?id=10.1371/journal.pbio.3002213">View Page</a> </li> <!-- Annotations and issue images do not have printables. They can be filtered by doi. --> <li class="related-article-link-download"> <a href="/plosbiology/article/file?type=printable&id=10.1371/journal.pbio.3002213" target="_blank" title="PDF opens in new window">PDF</a> </li> </ul> </li> </ul> </div> <div class="aside-container collections-aside-container"><!-- React Magic --></div> <div class="skyscraper-container"> <div class="title">Advertisement</div> <!-- DoubleClick Ad Zone --> <div class='advertisement' id='div-gpt-ad-1458247671871-1' style='width:160px; height:600px;'> <script type='text/javascript'> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1458247671871-1'); }); </script> </div> </div> <div class="subject-areas-container"> <h3>Subject Areas <div id="subjInfo">?</div> <div id="subjInfoText"> <p>For more information about PLOS Subject Areas, click <a href="https://github.com/PLOS/plos-thesaurus/blob/master/README.md" target="_blank" title="Link opens in new window">here</a>.</p> <span class="inline-intro">We want your feedback.</span> Do these Subject Areas make sense for this article? Click the target next to the incorrect Subject Area and let us know. Thanks for your help! </div> </h3> <ul id="subjectList"> <li> <a class="taxo-term" title="Search for articles about Image processing" href="/plosbiology/search?filterSubjects=Image+processing&filterJournals=PLoSBiology&q=">Image processing</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Image processing"><p class="taxo-explain">Is the Subject Area <strong>"Image processing"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> <li> <a class="taxo-term" title="Search for articles about Image analysis" href="/plosbiology/search?filterSubjects=Image+analysis&filterJournals=PLoSBiology&q=">Image analysis</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Image analysis"><p class="taxo-explain">Is the Subject Area <strong>"Image analysis"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> <li> <a class="taxo-term" title="Search for articles about Computer software" href="/plosbiology/search?filterSubjects=Computer+software&filterJournals=PLoSBiology&q=">Computer software</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Computer software"><p class="taxo-explain">Is the Subject Area <strong>"Computer software"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> <li> <a class="taxo-term" title="Search for articles about Deep learning" href="/plosbiology/search?filterSubjects=Deep+learning&filterJournals=PLoSBiology&q=">Deep learning</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Deep learning"><p class="taxo-explain">Is the Subject Area <strong>"Deep learning"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> <li> <a class="taxo-term" title="Search for articles about Open source software" href="/plosbiology/search?filterSubjects=Open+source+software&filterJournals=PLoSBiology&q=">Open source software</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Open source software"><p class="taxo-explain">Is the Subject Area <strong>"Open source software"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> <li> <a class="taxo-term" title="Search for articles about Blastocysts" href="/plosbiology/search?filterSubjects=Blastocysts&filterJournals=PLoSBiology&q=">Blastocysts</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Blastocysts"><p class="taxo-explain">Is the Subject Area <strong>"Blastocysts"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> <li> <a class="taxo-term" title="Search for articles about Biologists" href="/plosbiology/search?filterSubjects=Biologists&filterJournals=PLoSBiology&q=">Biologists</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Biologists"><p class="taxo-explain">Is the Subject Area <strong>"Biologists"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> <li> <a class="taxo-term" title="Search for articles about Cell staining" href="/plosbiology/search?filterSubjects=Cell+staining&filterJournals=PLoSBiology&q=">Cell staining</a> <span class="taxo-flag"> </span> <div class="taxo-tooltip" data-categoryname="Cell staining"><p class="taxo-explain">Is the Subject Area <strong>"Cell staining"</strong> applicable to this article? <button id="noFlag" data-action="remove">Yes</button> <button id="flagIt" value="flagno" data-action="add">No</button></p> <p class="taxo-confirm">Thanks for your feedback.</p> </div> </li> </ul> </div> <div id="subjectErrors"></div> </aside> </div> </main> <footer id="pageftr"> <div class="row"> <div class="block x-small"> <ul class="nav nav-secondary"> <li class="ftr-header"><a href="https://plos.org/publications/journals/">Publications</a></li> <li><a href="/plosbiology/" id="ftr-bio">PLOS Biology</a></li> <li><a href="/climate/" id="ftr-climate">PLOS Climate</a></li> <li><a href="/complexsystems/" id="ftr-complex-systems">PLOS Complex Systems</a></li> <li><a href="/ploscompbiol/" id="ftr-compbio">PLOS Computational Biology</a></li> <li><a href="/digitalhealth/" id="ftr-digitalhealth">PLOS Digital Health</a></li> <li><a href="/plosgenetics/" id="ftr-gen">PLOS Genetics</a></li> <li><a href="/globalpublichealth/" id="ftr-globalpublichealth">PLOS Global Public Health</a></li> </ul> </div> <div class="block x-small"> <ul class="nav nav-secondary"> <li class="ftr-header"> </li> <li><a href="/plosmedicine/" id="ftr-med">PLOS Medicine</a></li> <li><a href="/mentalhealth/" id="ftr-mental-health">PLOS Mental Health</a></li> <li><a href="/plosntds/" id="ftr-ntds">PLOS Neglected Tropical Diseases</a></li> <li><a href="/plosone/" id="ftr-one">PLOS ONE</a></li> <li><a href="/plospathogens/" id="ftr-path">PLOS Pathogens</a></li> <li><a href="/sustainabilitytransformation/" id="ftr-sustainabilitytransformation">PLOS Sustainability and Transformation</a></li> <li><a href="/water/" id="ftr-water">PLOS Water</a></li> </ul> </div> <div class="block xx-small"> <ul class="nav nav-tertiary"> <li> <a href="https://plos.org" id="ftr-home">Home</a> </li> <li> <a href="https://blogs.plos.org" id="ftr-blog">Blogs</a> </li> <li> <a href="https://collections.plos.org/" id="ftr-collections">Collections</a> </li> <li> <a href="mailto:webmaster@plos.org" id="ftr-feedback">Give feedback</a> </li> <li> <a href="/plosbiology/lockss-manifest" id="ftr-lockss">LOCKSS</a> </li> </ul> </div> <div class="block xx-small"> <ul class="nav nav-primary"> <li><a href="https://plos.org/privacy-policy" id="ftr-privacy">Privacy Policy</a></li> <li><a href="https://plos.org/terms-of-use" id="ftr-terms">Terms of Use</a></li> <li><a href="https://plos.org/advertise/" id="ftr-advertise">Advertise</a></li> <li><a href="https://plos.org/media-inquiries" id="ftr-media">Media Inquiries</a></li> <li><a href="https://plos.org/contact" id="ftr-contact">Contact</a></li> </ul> </div> </div> <div class="row"> <p> <img src="/resource/img/logo-plos-footer.png" alt="PLOS" class="logo-footer"/> <span class="footer-non-profit-statement">PLOS is a nonprofit 501(c)(3) corporation, #C2354500, based in San Francisco, California, US</span> </p> <div class="block"> </div> </div> <script src="/resource/js/global.js" type="text/javascript"></script> </footer> <script type="text/javascript"> var ArticleData = { doi: '10.1371/journal.pbio.2005970', title: '<article-title xmlns:mml=\"http://www.w3.org/1998/Math/MathML\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">CellProfiler 3.0: Next-generation image processing for biology<\/article-title>', date: 'Jul 03, 2018' }; </script> <script src="/resource/js/components/show_onscroll.js" type="text/javascript"></script> <script src="/resource/js/components/pagination.js" type="text/javascript"></script> <script src="/resource/js/vendor/spin.js" type="text/javascript"></script> <script src="/resource/js/pages/article.js" type="text/javascript"></script> <script src="/resource/js/pages/article_references.js" type="text/javascript"></script> <script src="/resource/js/pages/article_sidebar.js" type="text/javascript"></script> <script src="/resource/js/vendor/foundation/foundation.dropdown.js" type="text/javascript"></script> <script src="/resource/js/components/table_open.js" type="text/javascript"></script> <script src="/resource/js/components/figshare.js" type="text/javascript"></script> <script src="/resource/js/vendor/jquery.panzoom.min.js" type="text/javascript"></script> <script src="/resource/js/vendor/jquery.mousewheel.js" type="text/javascript"></script> <script src="/resource/js/components/lightbox.js" type="text/javascript"></script> <script src="/resource/js/pages/article_body.js" type="text/javascript"></script> <!-- This file should be loaded before the renderJs, to avoid conflicts with the FigShare, that implements the MathJax also. --> <!-- mathjax configuration options --> <!-- more can be found at http://docs.mathjax.org/en/latest/ --> <script type="text/x-mathjax-config"> MathJax.Hub.Config({ "HTML-CSS": { scale: 100, availableFonts: ["STIX","TeX"], preferredFont: "STIX", webFont: "STIX-Web", linebreaks: { automatic: false } }, jax: ["input/MathML", "output/HTML-CSS"] }); </script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=MML_HTMLorMML"></script> <div class="reveal-modal-bg"></div> </body> </html>