WO2000052646A2 - A method and apparatus for automation of laboratory experimentation - Google Patents
A method and apparatus for automation of laboratory experimentation Download PDFInfo
- Publication number
- WO2000052646A2 WO2000052646A2 PCT/US2000/005656 US0005656W WO0052646A2 WO 2000052646 A2 WO2000052646 A2 WO 2000052646A2 US 0005656 W US0005656 W US 0005656W WO 0052646 A2 WO0052646 A2 WO 0052646A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- data
- grid
- destination
- sites
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B01—PHYSICAL OR CHEMICAL PROCESSES OR APPARATUS IN GENERAL
- B01J—CHEMICAL OR PHYSICAL PROCESSES, e.g. CATALYSIS OR COLLOID CHEMISTRY; THEIR RELEVANT APPARATUS
- B01J2219/00—Chemical, physical or physico-chemical processes in general; Their relevant apparatus
- B01J2219/00274—Sequential or parallel reactions; Apparatus and devices for combinatorial chemistry or for making arrays; Chemical library technology
- B01J2219/0068—Means for controlling the apparatus of the process
- B01J2219/00695—Synthesis control routines, e.g. using computer programs
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B01—PHYSICAL OR CHEMICAL PROCESSES OR APPARATUS IN GENERAL
- B01J—CHEMICAL OR PHYSICAL PROCESSES, e.g. CATALYSIS OR COLLOID CHEMISTRY; THEIR RELEVANT APPARATUS
- B01J2219/00—Chemical, physical or physico-chemical processes in general; Their relevant apparatus
- B01J2219/00274—Sequential or parallel reactions; Apparatus and devices for combinatorial chemistry or for making arrays; Chemical library technology
- B01J2219/0068—Means for controlling the apparatus of the process
- B01J2219/00702—Processes involving means for analysing and characterising the products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10056—Microscopic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
- G06T2207/30072—Microarray; Biochip, DNA array; Well plate
Definitions
- the invention relates to the field of laboratory management and more specifically to the field of automation of high-throughput screening research.
- HTS high-throughput screening
- microassay samples have volumes in a range of picoliters to milliliters.
- experiments done in microassays require liquid-handling steps to mix reagents in strict quantities and specified orders.
- these HTS liquid-handling robots are employed to automate the preparation of thousands of microassay samples, often using microarrays, microplates, or DN A Chips.
- What is needed is the means to readily design and perform experiments as well as quickly and efficiently store, analyze, annotate, and search information derived from HTS research. What is further needed is the ability to interface an experimental design and data management system to sample handling robots and data collection devices. What is further needed is the ability to perform these management tasks in a unified and intuitive manner.
- Fig. 1 is a schematic diagram of an embodiment of laboratory facility, including an automated laboratory system.
- Fig. 2 is a block diagram of an embodiment of the automated laboratory system of Fig. 1 that comprises five subsystems;
- Fig. 3 is a block diagram of an embodiment of the subsystems in Fig. 2;
- Fig. 4 is a flowchart that depicts an example embodiment of message flow and processing in the automated laboratory system of Fig. 2;
- Fig. 5 is a depiction of an embodiment of a visual display for sample mapping and experimental design
- Fig. 6 is a depiction of an embodiment of a visual display for experiment design and review of selected procedures
- Fig. 7 is a depiction of an embodiment of a grid overlay
- Fig. 8 is a flowchart of an embodiment of a method for orienting a grid on an image with periodic intensity spots
- Fig. 9 is a block diagram of an off-site database system in support of the automated laboratory system of Fig. 1.
- the preferred embodiment provides a computer hardware and software-based automated laboratory system 10 that serves to manage research in a laboratory facility 1 , such as an HTS facility.
- a laboratory facility 1 such as an HTS facility.
- the preferred embodiment is described in the following at increasing levels of detail, commencing with an overview of the interaction of the automated laboratory system 10 and other laboratory facility 1 components.
- a laboratory facility Referring to Fig. 1, an embodiment of a laboratory facility 1 is depicted. Such a system would typically be employed in high-throughput screening ("HTS") laboratory such as that employed by research biologists, for example drug discovery scientists.
- the laboratory facility 1 is comprised of an automated laboratory system 10, a database 20, one or more sample handling robot drivers 30, one or more sample handling robots 40, experimental material sources 50 and experimental material carriers 60.
- the robots 40 typically possess several modules to perform various operations, including: moving containers, such as sources 50 and carriers 60; dispensing solutions onto the destination material carriers 60; vacuum aspiration to collect source material 51 from the material sources 50; shaking samples; and heating and cooling samples.
- the individual mixtures of destination material 61 are typically present in the form of an array on the material carrier 60. In such arrays, the destination material 61 is often distributed as microarrays of droplets or in arrays of wells on microplates. More generally, the destination material carriers 60 can be comprised of: racks, holders, slides, microplates, microarrays, circuit boards, arrays of electric elements, arrays of microgel elements, etc.
- the moving of sample material from sources 50 to destination carriers 60 is preferably performed by a liquid handling robot that includes dispensing tips for preparing microplates and microarrays, for example the BioChip ArrayerTM (Packard Instrument Company,
- dispensing tips can utilized, such as those that employ pipettes, pin tools, piezoelectric elements, solenoids and cavro pumps.
- Contact or non-contact techniques can serve to dispense molecules onto carriers 60.
- Contact techniques rely on the use of a surface that produces a drop of solution at one end that is transferred to the substrate in a position dependent manner by direct contact.
- a pipeting robot such as that available from Nffymetrix, Inc. (3380 Central Expressway, Santa Clara, California 95051), can provide this capability. Molecules can be deposited through non-contact means by dispensing a drop of solution with a defined volume onto a specific position of a carrier 60.
- ⁇ on-contact tools employ piezoelectric or solenoid driven pipeting devices.
- Experimental data is typically in the form of images of the microplates and microarrays, the images being stored, along with other experimental data, in the database 20.
- the database 20 can comprise a commercial database, such as SQL Server TM (Microsoft Coporation, One Microsoft Way, Redmond, Washington 98052-6399).
- the robots 40 typically provide automated control of the image collection instruments, for example, scanning laser confocal microscopes. Due to the distribution of destination material 61 in array form, each experimental image typically comprises an array of sub-images, each sub-image corresponding to one site of destination material 61.
- the system 10 comprises software running on a computer system, such as computer that supports the Microsoft Windows® operating system (Microsoft Corporation, One Microsoft Way, Redmond, Washington 98052-6399).
- the system 10 permits management of a full range of laboratory functions, including: design of experiments; control of the robots 40; tracking of source and destination materials 51 and 61; data collection, storage, and access via the database 20; data analysis; data modifications; and linking sample tracking data with related experimental image data.
- an embodiment of the automated laboratory system 10 is depicted in a top-level, block diagram form.
- five subsystems comprise the system 10: the data manager subsystem 100; the designer subsystem 200; the annotator subsystem 300; the analyzer subsystem 400; and the main subsystem 500.
- the data manager 100 maintains the databases for the system 10, including databases internal to the system 10 and databases external to the system 10 such as the database 20, and mediates all communications within the system 10. That is, all messages, comprising data and commands, that are passed between the various subsystems 100, 200, 300, 400, and 500, pass through the data manager 100.
- the data manager 100 further, has the task of notifying subsystems 200, 300, and 400 of changes in system 10 status by sending notification messages to all subsystems 200, 300, and 400 upon occurrence of such changes.
- the system 10 is preferably implemented through use of object-oriented design methods and an object-oriented computer software language, such as C++ or Java.
- the system can be applied to a variety of data management needs.
- the preferred embodiment is tailored to management of microarray research in the field of biology.
- the system 10 enables experimental design, tracking and mapping of the mixing of reagents and biological molecules from sources 50, typically from wells on microplates, to destination material 61 locations, typically wells on microplates or sites on microarrays.
- the preferred embodiment uses a logical division of tasks between the various subsystems 100, 200, 300, and 400. This enhances the ability to implement the system 10, improves user interactions with the system 10, and provides for addition of features to the system 10, as desired.
- the preferred embodiment of the data manager 100 centralizes mediation of communications between subsystems 100, 200, 300, 400, and 500 and with the database 20 along with responsibility for data management.
- the designer 200 has responsibility for user interactions that entail design and review of experiments.
- the annotator 300 is, in essence, a data editor. Alphanumeric data can be viewed and edited, while also viewing experimental images.
- the analyzer 400 is responsible for calculations and user interactions that are involved in image and data analyses.
- the subsystem 100, 200, 300, and 400 share some implementation.
- the annotator 100 and the analyzer 400 can share image viewing classes that support on-screen display of images.
- the main subsystem 500 comprises the operating system portion of the system 10.
- Embodiments of the subsystems 200, 300, and 400 utilize the Ul-model-mutator design pattern (UI meaning user interface), this design pattern known in the prior art, in the organization of subsystem 200, 300 and 400 classes.
- a subsystem 600 comprises a set of UI classes 620, a set of model classes 630, a set of mutator classes 640, and a facade class 610.
- object-oriented observer-listener message handling technique known in the prior are, via addition of observer 660 and listener 670 classes.
- the facade class 610 mediates all messages passing to or from the subsystem 600. Hence, only subsystem facade classes 610 are registered with the data manager class for receipt of update notifications.
- UI classes 620 contribute to a graphical user interface including support for the windows that are associated with the particular subsystem 200, 300, and 400.
- Model classes 630 handle data storage and are associated with real-world objects, such as microplates and microarrays.
- Mutator classes 640 handle data manipulation. The number and relationships of UI, model, and mutator classes 620, 630 and 640 vary with the requirements of the particular subsystem 200, 300, and 400.
- Each subsystem 200, 300, and 400 possesses the implementation associated with the roll for the particular subsystem 200, 300, and 400, though, as noted above, some sharing of code is employed for efficiency of implementation.
- the Data Manager - The data manager (“DM") subsystem 100 mediates all communications for the system 10. Hence, the flow of data and commands between subsystems 200, 300, 400, and 500 passes through the DM 100.
- the DM 100 further manages data storage for the system 10 and in particular is responsible for all data that is shared across the system 10.
- the facade 610 of the DM 100 is also referred to as the "librarian".
- the DM 100 includes model classes that, when instantiated, correspond to various experimental design objects.
- model classes are given descriptive names, for example: DeckModel, which holds descriptive data for decks, e.g. sets of microplates, and RackModel, which holds descriptive data for a rack, e.g. a microplate.
- models provide all data associated with the object they represent as with as methods to access that information.
- the RackModel class includes the following data items: name, width, height, and well depth.
- a model class is not implemented for wells. Since the number of wells is typically in the tens of thousands or more, the number of instantiations of well model class objects would be equally huge, leading to undesirable overhead.
- Attributes are the various data items that are associated with a particular well.
- Other experimental objects can also have attributes, such as images and spots.
- objects such as racks and wells have attributes, i.e. associated data, that are managed via instantiations of an AttributeList class and an associated ByteBucket class.
- the naming of the classes is chosen for its descriptiveness.
- the AttributeList provides a solution to the problem of storing data fields when the exact number and type of data fields are not specified at compile time. Because such a high number of AttributeList objects can be instantiated, the internal data structures must be very memory space conservative.
- the AttributeList is structured to be runtime flexible and conservative of random access memory
- Each instantiation of an AttributeList contains an instantiation of a ByteBucket object.
- the ByteBucket is designed to be a flexible array of bytes whose memory size can be resized automatically.
- a CArray is not used because it contains the added memory overhead associated with the CObject class from which it inherits.
- a CList also is undesirable because its implementation would take up even more RAM than would use of CNrray.
- a static byte array is unsuitable because its size is fixed at compile time.
- the preferred embodiment use no pointers in the internal data structure of the AttributeList.
- the ByteBucket simply contains all the data fields, one after another encoded in the byte array.
- each AttributeList contains a ByteBucket object that stores the raw data.
- the AttributeList handles interpretation of the data held within the ByteBucket, without use of conventional pointers. Hence, both RAM usage and data access speed efficiencies are obtained.
- the internal data structures of the AttributeList comprise the ByteBucket, i.e. a resizable byte array and a, descriptively named, RoleCall.
- the RoleCall comprises an array of bits. Each bit represents a possible field in the AttributeList. If a particular bit has the value ' 1 ', then that field is present.
- the AttributeList does not possess information concerning the data type of the field.
- the ByteBucket data structure contains two sections. The first part of the ByteBucket, a pointer-containing section, contains 16-bit pointers to the actual data fields contained in the second section of the ByteBucket, a data-containing section.
- Each pointer is an absolute pointer from the first byte of the ByteBucket.
- the 16-bit pointers are arranged in the pointer section of the ByteBucket in the same order as the bits in the RoleCall. For example, if the first two bits of the RoleCall are ' 1 ', then there exist two pointers in the pointer section that correspond to data fields in the data section. As a result, if the data field is not present, no space is allocated for that field in the data section. Even when a particular data field is present, the pointer to the data field requires only 16-bits of space, rather than the 32 bits of a true 32-bit pointer.
- the DM 100 possesses command classes that support command generation for the system 10.
- Commands are generally comprised of two types: read and write. Commands are transmitted between subsystems as messages that possess data which may include logic for operating on data. Write commands typically alter data while read commands typically collect and return data to the requesting subsystem 100, 200, 300, 400, or 500.
- the command classes are implemented following the approach of the command design pattern, know in the prior art. This design patterns provides for encapsulation of commands as objects in a manner that permits the queuing or logging of command requests and the support of undoable operations. An example of the interaction of commands and the sending of messages in the system 10 is given in the section below, entitled "The Messaging System”.
- the Designer Subsystem 200 has primary responsibility for the design and review of experimental plans. Methods are provided for mapping of sample sources 50 to destination carriers 60 and for associating experimental procedures with those associations, as described in a section below, entitled "Manipulation and Analysis of Images”. The designer subsystem 200 further provides for review and modification to existing mappings and procedures.
- the preferred embodiment of the designer subsystem 200 includes relatively large numbers of UI classes 620, model classes 630, and mutator classes 640.
- UI classes 620 support, for example, the display of decks, racks, and experimental procedures. Further, there is window support for manipulation of displays, such as a rack display, via zooming and translating display depictions.
- model classes 630 are provided to hold experimental design data, such as procedures to be used and the microplates to be processed.
- Mutator classes 640 support the UI 620 and model classes 630 by providing the methods required to manipulate data while, for example, zooming a display or editing experimental design data.
- the Annotator Subsystem 300 has responsibility for mediating user interaction with data stored in the system 10.
- the annotator 300 is essentially an edit and search tool.
- the annotator 300 provides for user interaction when the user wishes to examine alphanumeric data and add to, delete, or edit that data.
- the annotator 300 further provides facilities for a user to search for data, both alphanumeric files and images files.
- the annotator 300 comprises several UI classes 620 that provide graphical, i.e. windows, support to permit the user to search, select, and modify data.
- the data displayed by the UI classes 620 of the annotator 300 are obtained by the facade 610 for the annotator 300 via the DM 100.
- the annotator 300 facilitates the automation of experimental management.
- the UI classes 620 of the annotator 300 accept changes as input while the facade 610 of the annotator 300 communicates the changes to the remainder of the system 10 via the DM 100.
- the database 20 can be updated and current data displayed when the designer 200 or analyzer 400 are accessed by the user. For example, a user can input values and annotations for experimental objects: images, wells, racks, procedures.
- the annotator subsystem 300 in conjunction with the analyzer subsystem 400 provide for manipulation of experimental images.
- Image manipulation is described below, in a section entitled "Manipulation and Analysis of Images”.
- the Analyzer Subsystem 400 has primary responsibility for mediating user interaction in data analysis.
- the analyzer includes UI classes 620 and model classes 630 that support the display and manipulation of images for image processing. Aspects of processing and analysis of experimental images are described in the section below, entitled “Manipulation and Processing of Images”.
- the analyzer 400 exists as a stand-alone application for analysis of existing images.
- the Main Subsystem 500 encompasses the functionality and GUI support provided by the operating system. This includes support for windows, menus, and toolbars.
- the Microsoft Corporation Windows® operating system (Microsoft Corporation, One Microsoft Way, Redmond, Washington 98052-6399) is employed in the preferred embodiment. Messaging system
- Step 1 the flow of messages through the system 10 is illustrated by the processing of a user selection of a particular well while working with the designer 200.
- the user initially selects (Step 1) a well, from a screen image, via mouse clicks.
- the selection is received by a UI class object 620 of the designer subsystem 200.
- the UI class object 620 passes (Step 2) a request for coordinate information to a mutator class object 640 of the designer 200, the mutator class object 640 generating a selection request.
- the set selection request is passed to the designer facade 210 (Step 3), to be forwarded (Step 4) to the librarian 110 for a data update.
- the librarian notifies (Step 5) all subsystems 200, 300, 400, and 500 of the new set selection, e.g. notification that the user has made a new well selection. Since the annotator 300 supports display of current data, the annotator must respond to the notice in order to obtain the new data for display.
- the annotator facade 310 passes the notification to a UI class object 620 of the annotator 300 (Step 6).
- the UI class object 620 of the annotator 300 creates a get selection request, to obtain the updated user selection data, and passes it to the facade 310 (Step 7).
- the get selection request is processed, by forwarding it to the librarian 110, to obtain current data for the selected well and transfer that data to the annotator 300 for display to the user.
- the system 10 includes provisions for an intuitive graphical user interface to assist in experimental design, data analysis, and sample tracking.
- the system 10 can visually depict the relationships between source sample sites 51 and destination sample sites 61.
- Fig. 5 shows a source microplate 1010 and a destination microarray 1020. Lines 1011 link source well sites on the microplate 110 to destination sample sites on the microarray 1020. More complex mappings can be achieved and displayed than depicted here.
- multiple source sample sites 51 can contribute to multiple destination sample sites 61.
- Figure 5 further shows an image 1030 for a portion of the sample sites on the microarray 1020.
- lines 1021 are used to indicate the association of the image with the particular sites on the microarray 1020.
- One or more on-screen boxes 1041 and 1042 can be used to display alphanumeric data, for example, lists of: microplate identifiers; microarray identifiers; experimental procedures; image identifiers; and image analysis data for particular image sites. Boxes can display lists of sources 50 and destination carriers 60 for selection during design of experiments. Further, lists of sample carriers, such as microplates, can be provided for the user to scroll through. The user can then select particular microplates to be employed as source 50 or destination 60 carriers.
- a procedure box can be displayed that supports the graphical depiction described above by displaying the x-y coordinates of source sites 50 and destination sites 61.
- procedural routines can be listed for sample sites 61, for example, shaking, heating, or cooling routines.
- Windows such as dialog boxes, can be used to apply annotations to experimental components and procedures, either through the annotator 300 or the designer 200.
- keywords are used to describe various parameters, such as the purpose of a procedure, the number of times it will be repeated, and the liquid volume associated with the procedure.
- the system 10 provides for design and display of procedures, via interaction with the designer 200, through a series of linked procedures, known as a procedure tree.
- a procedure tree outlines all procedures that are used when experimental material 51 is moved between a material source 50 and a destination material site 61.
- the procedure tree outlines the various steps performed by a robot 40, including moving material and containers, and shaking, heating and cooling of samples.
- the procedure tree also displays source 50 to destination 61 mappings.
- a complete experiment can be created, reviewed, and edited via the procedure tree.
- defined sets of procedures are grouped together into graphical objects called loops, utilizing the object-oriented programming technique of inheritance.
- on-screen boxes 1041 and 1042 that display procedure trees and source 50 and destination 61 sample locations, procedures and associated sample locations for source 50 and destination 61 sites can be selected and linked.
- Visual display eases the selection and review process. For example, selecting a procedural step with a mouse-click causes the listed locations of the associated sample sites 50 and 61 to be highlighted.
- Distinguishing coloring schemes are employed in the preferred embodiment to aid quick localization of correspondence between source 50 and destination 61 site locations.
- the preferred embodiment provides drag-and-drop features to aid in establishing relationships between source 50 and destination 61 sites.
- the cursor is employed to highlight a set of source sites 50, for example on a microplate. The highlighted section is then dragged to a display of, for example, a destination microplate and released when aligned with the desired set of destination 61 sites. Selected source sample 50 sites can be modified with further mouse clicks on the original selected set of source sites 50.
- the user can indicate multiplication factors to be applied to the dragged set of source 50 sites to include a proportionally larger set of sites from, for example, a microplate.
- FIG. 6 one of the display options 2000 of the preferred embodiment supported by the designer 200 is shown.
- a source microplate 2010 and destination microplate 2020 are schematically depicted in two Windows, while a third Window displays a procedure tree 2030.
- the individual sample sites are depicted as small squares, either source sites 2011 or destination sites 2021.
- the user can annotate each procedure in the tree with descriptive keywords.
- the ability to annotate procedures is also supported during user interaction with the annotator 300.
- the tree treats each procedural step as an object-oriented component where each object possesses attributes to describe the state and behavior of the object.
- the state of a procedure can include keywords that describe, for example, its purpose, the number of times the procedure is repeated, or the liquid volume associated with the procedure.
- the behavior of a procedure describes information related to the actual procedural action.
- the procedure tree 2030 is actively linked to source and destination locations 201 1 and 2021 in the sample carrier depictions 2010 and 2020. Highlighting a procedure automatically highlights the associated sample sites 2011 and 2021.
- the procedure tree 2030 uses loop nodes, end nodes, and various procedure nodes.
- a procedure tree 2030 represents the process of mapping. Loop nodes allow the user to specify redundant mappings by overlay. End nodes allow the user to insert other nodes without confusion about what relationship the new node will have to existing nodes (e.g. is the new node a sibling of an existing node or a child?)
- a ghosting scheme is used.
- the scheme shows a ghost of the head as an overlay on top of the source 2010 and destination 2020.
- a ghost image similar in appearance to four sample sites 2011 or 2021 is used to represent how individual tips on a dispense head are positioned relative to each source carrier 2010 and destination carrier 2020. In this way, the user can visually determine the location of pipette heads relative to wells in microplates.
- a user can specify the moving and mixing of reagents from source carriers 2010 to destination carriers 2020.
- the preferred embodiment includes two methods for mapping the movement of reagents: 1) the ghosting method described above; and 2) - lo using block allocation via specification of x-y coordinates, i.e. where the tip allocations are made transparent to the user.
- the source and destination carriers 2010 and 2020 employ a coloring scheme to show how source and destination sites 2011 and 2021 are related.
- the preferred embodiment further allows for replicate block mapping via vertical and horizontal expansions. That is, large areas of source and destination carriers 2010 and 2020 can be mapped by specifying mappings of multiple smaller areas.
- Zooming The preferred embodiment provides three toolbar buttons for selection of the desired zooming mode: arrow, zoom in, and zoom out.
- Zooming support is provided, for example, by the analyzer 400 for examination of experimental images.
- One button may be selected at any one time.
- the cursor When the cursor is held over a carrier, for example the carriers 2010 and 2020 in Fig. 6, the cursor depicts an icon that indicates the current zoom mode.
- zoom in the image will expand and become centered on the site 2011 or 2021 selected by the cursor during a click.
- the image will similarly shrink when in zoom out mode.
- the toolbar provides no arrow button.
- zoom in and zoom out do not recenter the image; the image simply zooms in response to toolbar button clicks.
- the cursor never changes and can always be used to select sample sites 2011 and 2021.
- Selection of source sites 2011 can be performed in a number of ways. A user can click and drag to create a rectangle about desired sites 2011. Upon releasing the mouse, the selected sites 2011 are highlighted. Destination sites 2021 can similarly be selected. The user is notified if the numbers of rows and columns for selected source and destination sites 2011 and 2021 do not match. In another embodiment, the rectangle that is displayed during click and drag for destination sites 2021 is automatically confined to a configuration that matches the previously selected source sites 2011. In another embodiment, the rectangle that is displayed during click and drag for destination sites 2021 is displayed as a ghost rectangle that follows movements of the cursor. The cursor can be used to click-and-drag to change the size of the ghost rectangle.
- a click-and-drag creates a rectangle about desired source sites 2011 and, upon release of the mouse, the selected sites 2011 are highlighted. The user then specifies expansion parameters to be applied to the selected sites 2011 for mapping onto destination sites 2021. The user then places the selected rectangle at a desired location on the destination carrier 2020.
- Aspirate node has five parameters: source rack, source well tip N, source well tip B, source well tip C, and source well tip D.
- Dispense nodes have four parameters: source rack source well, destination rack, destination well. End aspirate nodes have no parameters. For example, a user can click a source site 2011 (e.g.
- the box button selected and draw a rectangle to create many aspirate nodes.
- the selected source sites 2011 e.g. selected rectangle of wells
- destination sites 2021 e.g. destination wells
- the above discussed selection procedures can be supported by a set of seven toolbar buttons: redundancy by overlay, redundancy by next available, replicate by column, replicate by row, replicate by box, duplicate, and custom mapping.
- Procedures can be associated with source and destination sites 2011 and 2021 during the selection methods discussed above.
- the "box" button is first clicked.
- an aspirate node in the procedure tree Window 2030 is clicked.
- the following selection of source sites 2010 causes the selections to be identified as aspirate sites.
- To add a loop to the procedure tree Window 2030 a node is first clicked.
- an "add loop” toolbar button is clicked. This causes a loop to be inserted above the selected node. Nodes can be deleted by first selecting a node and then clicking a "delete node” toolbar button.
- Deleting and Adding Racks can provide for the addition or deletion of source and destination carriers 50 and 60 for a particular experiment.
- the user makes an "add rack” selection, in a menu associated with a deck Window, which causes an "add rack” dialog box to appear.
- To add a rack the user selects a rack from a drop-down menu, identifies it as a source or destination rack, and clicks an "add” button.
- the user can add more than one rack at a time.
- a similar approach is used to delete racks.
- Coloring of Wells To aid identification of the correspondence between source and destination sites 2011 and 2021, various coloring schemes can be employed.
- random colors are used to paint mapped source and destination wells. Unmapped sites are depicted in gray tones.
- every source well is painted with random colors while only mapped destination wells are painted.
- gradient colors are used for mapped source and destination wells while unmapped wells are depicted in gray tones.
- Display of Well Specific Data Among options for graphical aid in display of well specific data, as supported by the analyzer 400 and annotator 300, are: 1) hold cursor over a well of interest and observe data in a tool tip; and 2) hold cursor over a well of interest and observe data on the status bar.
- a click on a source well causes lines to appear that connect the source well with associated destination wells. The converse is true for clicks on destination wells.
- a click on a source well causes a popup Window to provide a list of destination wells that the source well maps to. The converse is true for clicks on destination wells.
- the popup Windows can display additional data, such as well and rack identification numbers.
- a click on a well causes associated wells to become highlighted.
- Interaction with images can be divided into three categories of work: selection of images for display; associating a grid overlay with a selected image; and the image pixel calculations. Such interaction, in the preferred embodiment, is supported by the analyzer 200. For convenience, grids are discussed first in the remainder of this section.
- Templates 3000 are employed in analysis of images, that is, in the extraction of pixel data from images.
- the template 3000 is an object on the image display that shows which areas are used to segment a set of wells, i.e. destination samples 61.
- a template 3000 is comprised of a grid 3010 and individual well templates 3020.
- the well template 3020 is a collection of well segmentation lines. These lines show the boundary of what, in an image, is considered to be an image of a well 61.
- well templates 3020 can be circles or squares or designed to fit the particular shape of a sample site 61 image, such as a well image or a microarray droplet site image.
- a template 3000 is manipulated for a selected image so that, when superimposed on the image, line elements of the grid 3010 are interposed between well 61 images and surround the area to be analyzed while the well templates 3020 individually surround the image sites that correspond to sample sites 61.
- a template 3000 is used in extraction of intensity data from its associated image.
- a user simply perceives a template 3000 as an interface that returns values that can be associated with a rack.
- the template 3000 behaves as a pseudo-rack with which the user interacts.
- the template 3000 has functionality that is almost identical to a rack object in the designer 200, with tool-tip dialogs and full annotation capabilities.
- the template overlay 3000 is merely a template that is used to generate data from a selected image that will be associated with the image.
- Certain associations must be maintained for interaction with the designer 200 and the annotator 300. These are: 1) the association of the image with a deck and 2) the associations of the circles or squares in the template 3020 with the individual well 61 images.
- spot check Window is supported by the analyzer 400 to mitigate this problem.
- the spot check Window provides two views of an image: one zoomed-out and one zoomed-in on a few well sites 61. This is generally sufficient to ascertain template accuracy.
- a template 3000 is automatically generated and matched against the image.
- the analyzer 400 calculates a best guess as to placement of the template 3000, as discussed below. To fine-tune template 3000 placement, the grid 3010 or individual well templates 3020 or groups of well templates 3020 can manually be moved. Further, the scale of the template 3000 relative to the image can be modified. Once template 3000 placement is satisfactory, the image can be analyzed.
- the user can choose between "show image alone”, “show image with template 3000”, “show image with grid 3010”, or "show image with wells 3020".
- template 3000 i.e. grid 3010 and well template 3020
- setup process is conducted through a wizard.
- the wizard acts on all selected images in parallel. There are several stages to the process: setting template 3000 parameters for each image; automatic detection of the template 3000; manual correction of the template 3000; and proceed to analysis.
- a tool properties window provides tools dedicated to template 3000 setup.
- no utilities are specifically dedicated to template 3000 manipulation. This provides for a simpler user interface.
- Information about the template 3000 is entered via the annotator 300.
- One image data field accessible via the annotator 300 is the image spot size.
- An initial setting for the spot size that approximates the size of a well 61 image aids in the process of automatic template 3000 setup. Since this parameter can vary considerably from image to image, manual setting of the spot size can be desirable.
- the spot size can initially be set at half the grid 3010 line spacings. This generally provides for a satisfactory automated result.
- preliminary image analysis is performed to obtain an estimate of spot size.
- a method for locating periodic image data in a noisy image - To assist automation of grid 3010 placement while avoiding confusion due to image artifacts, a method is employed by the system 10 for calculating grid 3010 placement. Method steps are depicted in the flow chart in Fig. 8.
- the system 10 creates a grid 3010 with line spacings determined from the nominal spacings of individual spots in an image. Alternatively, line spacings are derived from knowledge of the actual physical site 61 spacings on a sample carrier 60 from which the image was obtained.
- the grid 3010 is generally setup with a number of rows and columns chosen to correspond to that found in the particular image.
- a grid 3010 is placed (Step 10) at an initial, arbitrary, location relative to an image. Initial displacement values, in the preferred
- a weighted intensity sum for all pixels in the grid 3010 is obtained(Step 30).
- the weighting function can vary, however it must give greatest weight to the origin pixel, i.e. a pixel where grid 3010 lines intersect, and to pixels at periodic distances from the origin, i.e. at grid 3010 intersections. The weighting must fall off for pixels with increasing distance from those most heavily weighted pixels. This weighted sum gives a current intensity value.
- Step 60 the sum for the current position calculated at Step 30, is compared to the sums for each of the eight positions, calculated at Step 40. If the sum for the current position is not the greatest sum, the grid 3010 is moved (Step 70) to the location for the
- Step 95 a vector sum is calculated for the eight displaced location (Step 95), each component of the sum being weighted by the intensity sum for the associated grid 3010 location.
- Various additional weighting factors can be applied, though preferably a weighting factor that limits the resultant vector to a magnitude no more than half a grid 3010 spacing is desirable.
- the vector sum has a magnitude below some threshold value, i.e. near zero, the desired grid 3010 location has been found (Step 100). If the vector sum is greater than the threshold value, the grid 3010 is displaced by the vector sum (Step 105). The method then continues by returning to Step 30. Method steps continue as described above until the desired threshold is achieved at Step 100.
- Image Pixel Data Once the template 3000 has been properly aligned with an image, the image can be analyzed by the user, as supported by the analyzer 400, to extract spot intensity data and statistics, such as: average intensity of each image spot, i.e. each well site 61 image; peak intensity of each spot; and the total pixel intensity for all pixels at a spot.
- the annotator 300 can be used to examine and annotate image data.
- the analyzer 300 provides for selection and viewing of stored images.
- selection of an image causes the image to be displayed along with an "annotator Window" that displays image data. If more than one image is selected, the annotator Window displays common properties of all the selected images. Fields for which the values differ will be left blank. Some fields can be edited while others can be set to read-only. When multiple images are selected, data entered into a field is associated with all selected images.
- two tabs are available for annotation of image data: "comments” and "properties.” The properties tab lists essential properties of the selected images and the templates that will be overlaid on them for analysis.
- properties must be filled in before an image can be initialized, that is, associated with a destination carrier 60. Further, an image must be initialized before it can be analyzed.
- the comments tab can be used to store any information about images that does not neatly fit into a any category under the properties tab.
- each displayed image is displayed in its own Window with its name on the title bar.
- a grid envelope that is, a general outline that contains all the wells in the image
- a grid template that is, the individual well templates
- images that have been selected and displayed are gray. Displayed images cascade one on top of another. The last displayed image is the active one. This embodiment provides for display of any number of images.
- selected initialized images are grouped in one folder while selected uninitialized images are grouped in a second folder.
- These folders can be presented in a tree structure. When an image in the uninitialized image folder becomes initialized, the initialized image is moved to the initialized image folder.
- images are linked to annotations and grouped in logical folders, the user is greatly assisted in locating experimental images.
- the use can search terms or examine trees to locate an image.
- a database support database system 4000 that can further enhance the utility of the system 10 is depicted.
- the system 10 is linked to database system 4000.
- Software to manage the database system 4000 resides, preferably, on a computer 4100.
- a database 4200 can reside on the computer 4100 or on independent hardware.
- the database 4200 stores images and data files.
- the database system 4000 can reside at a user's location, but preferably would reside off-site.
- the database system 4000 in one embodiment, is operated as an independently run service, offered to a user. As such, the database system 4000 provides backup and management of critical data, freeing the user to focus on research efforts.
- data processing features are provided by the system 4000.
- the user would do a preliminary review of images, selecting image locations of interest, such as well 61 images,.
- a data packet, containing the user's selection, is then sent to the database system 4000.
- the database system 4000 retrieves the images from the database 4200.
- the database system can then generate a composite image from the selected sites.
- additional imaging processing and storage services can be provide by the database system, further support the system 10 user's research efforts.
- the database system can greatly increase the efficiency of a researcher.
- a software program may need to accommodate a variable size requirement. For example, one may need to dynamically vary the number of columns available for data storage. This can be accommodated by implementing a table with an extra column.
- the extra column can be loaded with pointers to additional tables, or other identifiers for access of an additional table or tables. This creates, in effect, a larger, i.e. a virtual, table.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Automatic Analysis And Handling Materials Therefor (AREA)
- Analysing Materials By The Use Of Radiation (AREA)
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU33947/00A AU3394700A (en) | 1999-03-03 | 2000-03-03 | A method and apparatus for automation of laboratory experimentation |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12263699P | 1999-03-03 | 1999-03-03 | |
US60/122,636 | 1999-03-03 | ||
US15441799P | 1999-09-17 | 1999-09-17 | |
US60/154,417 | 1999-09-17 | ||
US17067799P | 1999-12-14 | 1999-12-14 | |
US60/170,677 | 1999-12-14 |
Publications (3)
Publication Number | Publication Date |
---|---|
WO2000052646A2 true WO2000052646A2 (en) | 2000-09-08 |
WO2000052646A3 WO2000052646A3 (en) | 2000-12-14 |
WO2000052646B1 WO2000052646B1 (en) | 2001-01-18 |
Family
ID=27382832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2000/005656 WO2000052646A2 (en) | 1999-03-03 | 2000-03-03 | A method and apparatus for automation of laboratory experimentation |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU3394700A (en) |
WO (1) | WO2000052646A2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1461674A2 (en) * | 2001-12-03 | 2004-09-29 | Dyax Corporation | Library screening |
EP1538537A2 (en) * | 2003-12-01 | 2005-06-08 | Accelrys Software, Inc. | Method of storing fast throughput experimentation information in a database |
EP1877874A2 (en) * | 2005-05-03 | 2008-01-16 | S-Matrix Corporation | System for automating scientific and engineering experimentation |
US8209149B2 (en) | 2005-10-28 | 2012-06-26 | S-Matrix | System and method for automatically creating data sets for complex data via a response data handler |
US8219328B2 (en) | 2007-05-18 | 2012-07-10 | S-Matrix | System and method for automating scientific and engineering experimentation for deriving surrogate response data |
US8224589B2 (en) | 2005-10-28 | 2012-07-17 | S-Matrix | System and method for automating scientific and engineering experimentation for deriving surrogate response data |
US8437987B2 (en) | 2006-05-15 | 2013-05-07 | S-Matrix | Method and system that optimizes mean process performance and process robustness |
US8943163B2 (en) | 2005-05-02 | 2015-01-27 | S-Matrix | System for automating scientific and engineering experimentation |
US10002781B2 (en) | 2014-11-10 | 2018-06-19 | Brooks Automation, Inc. | Tool auto-teach method and apparatus |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5613013A (en) * | 1994-05-13 | 1997-03-18 | Reticula Corporation | Glass patterns in image alignment and analysis |
EP0923050A2 (en) * | 1997-12-11 | 1999-06-16 | Affymetrix, Inc. (a California Corporation) | Scanned image alignment systems and methods |
-
2000
- 2000-03-03 WO PCT/US2000/005656 patent/WO2000052646A2/en active Application Filing
- 2000-03-03 AU AU33947/00A patent/AU3394700A/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5613013A (en) * | 1994-05-13 | 1997-03-18 | Reticula Corporation | Glass patterns in image alignment and analysis |
EP0923050A2 (en) * | 1997-12-11 | 1999-06-16 | Affymetrix, Inc. (a California Corporation) | Scanned image alignment systems and methods |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1461674A4 (en) * | 2001-12-03 | 2007-10-24 | Dyax Corp | Library screening |
EP1461674A2 (en) * | 2001-12-03 | 2004-09-29 | Dyax Corporation | Library screening |
EP1538537A2 (en) * | 2003-12-01 | 2005-06-08 | Accelrys Software, Inc. | Method of storing fast throughput experimentation information in a database |
EP1538537A3 (en) * | 2003-12-01 | 2006-11-02 | Accelrys Software, Inc. | Method of storing fast throughput experimentation information in a database |
US8943163B2 (en) | 2005-05-02 | 2015-01-27 | S-Matrix | System for automating scientific and engineering experimentation |
EP1877874A2 (en) * | 2005-05-03 | 2008-01-16 | S-Matrix Corporation | System for automating scientific and engineering experimentation |
EP1877874A4 (en) * | 2005-05-03 | 2011-02-02 | Matrix Corp S | System for automating scientific and engineering experimentation |
US8209149B2 (en) | 2005-10-28 | 2012-06-26 | S-Matrix | System and method for automatically creating data sets for complex data via a response data handler |
US8224589B2 (en) | 2005-10-28 | 2012-07-17 | S-Matrix | System and method for automating scientific and engineering experimentation for deriving surrogate response data |
US8560276B2 (en) | 2005-10-28 | 2013-10-15 | S-Matrix | System and method for automatically creating scalar data sets for complex data via a response data handler |
US8437987B2 (en) | 2006-05-15 | 2013-05-07 | S-Matrix | Method and system that optimizes mean process performance and process robustness |
US8219328B2 (en) | 2007-05-18 | 2012-07-10 | S-Matrix | System and method for automating scientific and engineering experimentation for deriving surrogate response data |
US8577625B2 (en) | 2007-05-18 | 2013-11-05 | S-Matrix | System and method for automating scientific and engineering experimentation for deriving surrogate response data |
US10002781B2 (en) | 2014-11-10 | 2018-06-19 | Brooks Automation, Inc. | Tool auto-teach method and apparatus |
US10381252B2 (en) | 2014-11-10 | 2019-08-13 | Brooks Automation, Inc. | Tool auto-teach method and apparatus |
US10770325B2 (en) | 2014-11-10 | 2020-09-08 | Brooks Automation, Inc | Tool auto-teach method and apparatus |
US11469126B2 (en) | 2014-11-10 | 2022-10-11 | Brooks Automation Us, Llc | Tool auto-teach method and apparatus |
US11908721B2 (en) | 2014-11-10 | 2024-02-20 | Brooks Automation Us, Llc | Tool auto-teach method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
WO2000052646B1 (en) | 2001-01-18 |
WO2000052646A3 (en) | 2000-12-14 |
AU3394700A (en) | 2000-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0647909B1 (en) | Information catalog system with object-dependent functionality | |
JP4347371B2 (en) | Hierarchical file structure component selection system and method | |
US20070203951A1 (en) | User-configurable generic experiment class for combinatorial material research | |
US7512885B2 (en) | Graphical user interface for navigating and displaying relationships among media data and metadata | |
US8302019B2 (en) | System and method for visualizing process flows | |
US9336267B2 (en) | Method and system for navigation and visualization of data in relational and/or multidimensional databases | |
US5586311A (en) | Object oriented data access and analysis system | |
EP0453386B1 (en) | Hierarchical inter-panel process flow control | |
US7146384B2 (en) | System and method for data analysis, manipulation, and visualization | |
US8543943B2 (en) | Methods and systems for entering object assignments | |
EP0532740B1 (en) | Computer apparatus and method for finite element identification in interactive modeling | |
US6178382B1 (en) | Methods for analysis of large sets of multiparameter data | |
US6662237B1 (en) | System for documenting application interfaces and their mapping relationship | |
US20070005618A1 (en) | Systems and methods for modeling business processes | |
WO2002095659A2 (en) | A system and method for managing gene expression data | |
Ward et al. | Interaction spaces in data and information visualization. | |
EP2137643A1 (en) | Method and system for navigation and visualization of data in relational and/or multidimensional databases | |
WO2000052646A2 (en) | A method and apparatus for automation of laboratory experimentation | |
US20020054155A1 (en) | Data module design system | |
JP2005528681A (en) | Method and apparatus for integrated multi-scale 3D image documentation and navigation | |
JP4478579B2 (en) | System, method and computer program product for changing the graphical representation of data entities and relational database structures | |
JPH01189721A (en) | Electronic document retriever | |
US20050130229A1 (en) | Indexing scheme for formulation workflows | |
Schachter et al. | Data analysis software tools for enhanced collaboration at the DIII–D National Fusion Facility | |
US6970791B1 (en) | Tailored user interfaces for molecular modeling |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
AK | Designated states |
Kind code of ref document: B1 Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: B1 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
B | Later publication of amended claims | ||
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
122 | Ep: pct application non-entry in european phase |