The present disclosure relates generally to an intravascular catheter and more particularly to an intravascular catheter including a plurality of markers.
Cardiovascular Disease is a leading health problem in the developed world, with Coronary Artery Disease (CAD) being a particularly important problem. CAD typically occurs when part of the smooth, elastic lining inside a coronary artery becomes hardened, stiffened, and swollen with plaque. Plaque typically consists of calcium deposits, fatty deposits, and abnormal inflammatory cells. The formation of a plaque is termed Atherosclerosis. This plaque can cause an obstruction to the supply of oxygenated blood to the heart muscle and can cause chest pain (angina), and ultimately lead to heart attack and death.
The field of Interventional Cardiology is a branch of cardiology that deals specifically with catheter based treatments of structural heart diseases such as CAD. During a procedure known as Percutaneous Coronary Intervention (PCI) a catheter is inserted into a major systemic artery in either the groin or the arm and guided towards the entrance to the coronary tree. This catheter takes the form of a thin tube, through which a radio-opaque dye may be delivered into the bloodstream, allowing for visualization of the coronary arteries using a special type of X-ray imaging called Fluoroscopy.
If the vessel narrowing is deemed severe enough, a common treatment is the insertion of a stent to increase the diameter of the artery. To place the stent, another catheter is threaded through the blood vessels via a guidewire into the heart where the coronary artery is narrowed by plaque. When the catheter is in place, a balloon tip covered with a stent is inflated. The balloon tip compresses the plaque and expands the stent. Once the plaque is compressed and the stent is in place, the balloon is deflated and withdrawn with the catheter. The stent stays in the artery, holding the artery open. If the stent is not aligned correctly with the walls of the artery, termed incomplete stent apposition (ISA), there is an increased risk of long term negative outcomes such as myocardial infarction and stent thrombosis.
One of the challenges in this field is accurately assessing the state of disease in a patient's coronary arteries. Coronary angiograms are commonly used by clinicians to manually identify and quantify the degree of a stenosis, wherever they may appear. Given an angiogram's finite resolution, the fact that they are 2D projections of a complex three-dimensional (3D) structure, and the fact that a stenosis can reduce the amount of contrast agent flowing through a stenosis, reducing its visibility, has meant that in many cases other catheter based imaging techniques are used. These techniques include Intravascular Ultrasound (IVUS) or Intravascular Optical Coherence Tomgraphy (OCT), that acquire images of an artery and stenosis from the interior of the artery using an imaging sensor located at the catheter tip. Although these modalities provide much higher resolution images of the interior of an artery, they do not acquire any information about the 3D position and orientation of the catheter tip while the images are being acquired (e.g., if an OCT dataset is acquired while retracting the imaging sensor through a tortuous curved arterial branch, this could not be ascertained by examining the images).
According to an embodiment of the present invention, a catheter includes a monitoring body and a pair of markers disposed on the monitoring body, each marker of the pair of markers encircling the monitoring body, wherein the pair of markers are configured to indicate, through their appearance from a given point of view, an orientation of the monitoring body.
According to an embodiment of the present invention, a catheter includes an outer sheath, an inner sheath disposed within the outer sheath, a guidewire, a monitoring body disposed within the inner sheath, an imaging sensor disposed at a distal end of the monitoring body, and a pair of radio-opaque elliptical hoops disposed on the monitoring body, each radio-opaque elliptical hoop of the pair of radio-opaque elliptical hoops encircling the monitoring body, wherein the pair of radio-opaque elliptical hoops are configured to indicate, through their appearance in a two-dimensional projection, an orientation of the monitoring body.
According to an embodiment of the present invention, a method of generating a 4-Dimensional model includes capturing imagery of a catheter and a vessel as the catheter is directed through the vessel to a location of interest, wherein the catheter is disposed on a guidewire, constructing a 3-Dimensional time varying reference curve describing a trajectory of the guidewire, and constructing a time varying 3-Dimensional model of the artery using the reference curve.
According to an exemplary embodiment of the present invention, a method of generating a four-dimensional (4D) model during a Percutaneous Coronary Intervention (PCI) procedure comprises capturing imagery of a catheter and a vessel as the catheter is directed through the vessel to a location of interest, wherein the catheter is disposed on a guidewire and comprises a plurality of markers and a monitoring body, and wherein the imagery is captured from at least two different viewpoints, segmenting the guidewire and the at least one marker from the imagery and back projecting a segmented guidewire and at least one segmented marker into a three-dimensional (3D) space to define a time varying reference curve defining a motion of the monitoring body, recording accelerometer and gyroscope data of the catheter using a combination of sensors as the catheter is pulled away from the location of interest, integrating the accelerometer and gyroscope data in time, predicting a linear and a rotational position of the monitoring body in the imagery, and constructing the 4D model of the monitoring body and the vessel using the predicted linear and rotational position of the monitoring body, wherein the 4D model includes a time varying surface describing the vessel.
As used herein, “facilitating” an action includes performing the action, making the action easier, helping to carry the action out, or causing the action to be performed. Thus, by way of example and not limitation, instructions executing on one processor might facilitate an action carried out by instructions executing on a remote processor, by sending appropriate data or commands to cause or aid the action to be performed. For the avoidance of doubt, where an actor facilitates an action by other than performing the action, the action is nevertheless performed by some entity or combination of entities.
One or more embodiments of the invention or elements thereof can be implemented in the form of a computer program product including a computer readable storage medium with computer usable program code for performing the method steps indicated. Furthermore, one or more embodiments of the invention or elements thereof can be implemented in the form of a system (or apparatus) including a memory, and at least one processor that is coupled to the memory and operative to perform exemplary method steps. Yet further, in another aspect, one or more embodiments of the invention or elements thereof can be implemented in the form of means for carrying out one or more of the method steps described herein; the means can include (i) hardware module(s), (ii) software module(s) stored in a computer readable storage medium (or multiple such media) and implemented on a hardware processor, or (iii) a combination of (i) and (ii); any of (i)-(iii) implement the specific techniques set forth herein.
Techniques of the present invention can provide substantial beneficial technical effects. For example, one or more embodiments may provide one or more of the following advantages:
These and other features and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings.
Preferred embodiments of the present invention will be described below in more detail, with reference to the accompanying drawings:
According to an embodiment of the present invention, a catheter is configured to record an orientation of its tip as it moves through a coronary artery. According to an embodiment of the present invention, a direction vector is defined for the tip of the catheter and optionally, a measure of twist of the catheter. According to an embodiment of the present invention, this information is combined with imaging modalities such as Intravascular Ultrasound (IVUS) and intravascular Optical Coherence Tomography (OCT), enabling a reconstruction of the arterial lumen. According to an embodiment of the present invention, a technique for determining the 3D position and orientation of an imaging catheter during a pullback provides technical advantages including enabling the details of the arterial wall and its composition to be positioned correctly.
The catheter 100 is configured for acquiring IVUS or OCT images, wherein the outer sheath 101 remains in place during a pullback of the inner sheath 102, guidewire 103 and monitoring body 104, including the sensor 105, through the coronary artery (not shown). Furthermore, the markers 106-108 and 110 can be observed in an angiogram.
According to an embodiment of the present invention, the geometric array 110 includes radio-opaque markers 201-202. The radio-opaque markers 201-202 can be retro-fitted onto existing catheters to indicate twist of the catheter. These radio-opaque markers 201-202 are arranged in a fashion that enables determination of the orientation of the monitoring body 104. The radio-opaque markers 201-202 include 2 elliptical hoops (201 and 202, respectively) affixed to the exterior of the monitoring body, such that they remain stationary with respect to the imaging modality (OCT, or IVUS) The radio-opaque markers 201-202 are disposed orthogonal to one another, and at a fixed distance from the markers 106-108. Since the entirety of each loop is radio-opaque, a full ellipse is visible in the angiogram (or other imaging method) from all angles, unless that angle is parallel to the plane of the ellipse, in which case a single line is seen in the angiogram. Each orientation of the catheter from a particular viewpoint is associated via a lookup table with a unique 2D projection. Therefore, given a particular marker 2D projection seen on the angiogram, the pattern of the markers in relation to the angle of view of the angiogram relates to a single angle of twist of the catheter tip.
In addition to the geometric array 110, according to an embodiment of the present invention, the catheter 100 includes an Inertial Measurement Unit (IMU) configured to record orientation data relative to a datum point. The IMU provides linear and rotational information about the catheter, enabling the determination of a trajectory, which can be periodically confirmed in the angiogram via the orientation of the markers.
According to an embodiment of the present invention, a method 800 (see
According to an embodiment of the present invention, the method further comprises processing the imagery 803. More particularly, using these two angiograms 401-402, the guidewire 403 and markers 404 are segmented in each frame and projected into 3D space to define a time varying reference curve defining the motion of the monitoring body, which is affixed to the catheter, as a sequence of coordinates in space and time (i.e., a 4D trajectory) (see
According to an embodiment of the present invention, the segmentation can include extracting a coronary artery tree from each of a sequence of angiogram images, creating a mean artery tree from the extracted coronary artery trees, and projecting the mean artery tree back onto each of the sequence of angiogram images to recover a complete coronary artery tree for each of the sequence of angiogram images. Here, the disclosure of U.S. patent application Ser. No. 14/243,106, entitled Detecting Coronary Stenosis Through Spatio-Temporal Tracking, and filed on Apr. 2, 2014, is incorporated by reference in its entirety. It should be understood that other methods of segmenting the guidewire and markers can be used, for example, rule based classification of pixels of the frames and deep learning/neutral network classifiers can be used in one or more embodiments of the present invention.
According to an embodiment of the present invention, the processing 803 can be performed using existing techniques. In one example, the guidewire 403, proximal marker 404, lens marker 405 and distal marker 406 are extracted from each of a sequence of angiogram images of angiograms 401-402 by estimating a position of the guidewire 403 and markers 404-406 from each of the sequence of angiogram images. Mean positions of the guidewire 403 and markers 404-406 are calculated and re-aligned back to each of the sequences of angiogram images. This results in a set of positions widths along a common set of artery segments that can be compared over time.
The method further includes recording accelerometer and gyroscope data using some combination of sensors 302-304 as the catheter is wound back 804. This data includes a measure of inertial acceleration and rotational position in 3 dimensions. By integrating the accelerometer and gyroscope data in time based on the initial condition 804, a predicted linear and rotational position of the imaging sensor is estimated 805, to where the acquired frame can be located (see
According to an embodiment of the present invention, the method includes correcting for the drift error 806 accumulated in the accelerometer recording, using magnetometer data. According to an embodiment of the present invention, a filtering approach using the predicted and observed positions of the monitoring body is applied. By making use of the fact that the imaging sensor is constrained to move along the guidewire, the initial position and the known pullback rate are used to compute a location along the reference curve at the moment in time that the frame was acquired. Since the moment in time will not likely coincide with a point in time at which the reference curve is defined, the position is interpolated between neighboring points in space and time on the reference curve. At this stage a filtered estimate of the linear and angular position of the imaging sensor is determined and the data can be locked on to that point on the reference curve and oriented such that the image normal vector is parallel to the reference curve tangent at that point. While the image frames acquired by OCT or IVUS show the vessel cross-section of each frame location at a single point in the cardiac cycle, it is assumed that the cross-section at that vessel location does not change throughout the cycle, and remains stationary in relation to the associated point on the reference curve.
At this point the data acquisition is complete and the model is constructed 807. According to an exemplary embodiment of the present invention, the model is built by applying known segmentation techniques to extract contours from each frame defining the arterial wall and stent, applying or generating of point cloud data that may be used to define a time varying surface describing the arterial wall. The outcome of the method depicted in
Consider the following exemplary implementation illustrated in the method 700 of
According to an exemplary embodiment of the present invention, the construction of the 3D time varying reference curve describing the trajectory of the guidewire 701 uses image segmentation to extract pixels describing the guidewire from each angiogram, and performs a mapping to a world coordinate system to output the time varying 3D reference curve. According to an exemplary embodiment of the present invention, the time varying 3D reference curve is the trajectory of the guidewire. The trajectory of the guidewire is used to constrain calculations about the movement of the imaging sensor (and/or other components of the catheter) during pullback.
According to an exemplary embodiment of the present invention, as the 3D time varying reference curve describing the trajectory of the guidewire is built 701, an initial position and orientation of the lens marker is defined using image segmentation to extract pixels describing the elliptical markers, which are then mapped to the world coordinate system. The method uses at least two different angiograms taken from different viewpoints, to reconstruct the 3D world position of the elliptical markers. According to one or more embodiments of the present invention, it is assumed that the catheter and guidewire move in a periodic motion over time, where the motion of the guidewire from the first to the second scan corresponds with the motion of the heart. According to an exemplary embodiment of the present invention, when performing the pullback in the context of a non-bi-plane scanner, only one angiogram is acquired and used to track the lens marker. It should be understood that a bi-plane scanner can be used during pullback, and may provide additional imaging information. Given the 3D time varying reference curve, an image segmentation is performed on the angiogram(s) acquired during the pullback, and the position of the imaging sensor is mapped the onto the 3D time varying reference curve 702. According to an embodiment of the present invention, a lookup table is used for determining the orientation of the sensor based on the segmentation of the elliptical markers, where the lookup table includes data about known imagery of the elliptical markers corresponding to different orientations of the sensor.
According to an exemplary embodiment of the present invention, and with reference to
According to an exemplary embodiment of the present invention, the construction of the high-resolution time varying 3D computer model of the artery 702 comprises performing an intravascular imaging pullback at a user specified and controlled rate during which time IMU linear and rotational accelerations are recorded 721, acquiring, during the pullback, at least one angiogram run from one of the viewing angles used to build the reference curve in 701, such that the lens marker is visible 722 (e.g., with no dye injected), using the ECG data embedded in the run as metadata to map each frame to a position within the cardiac cycle 723, applying image/video processing analytics to segment the lens marker in each frame (e.g., using a CNN trained to perform semantic pixel labeling on the lens marker such that the appearance of the elliptical markers can be observed) 724, using a known pullback rate (and given the fact that the imaging sensor is constrained to move along the guidewire), compute distance of lens marker along reference curve relative to starting position (e.g., a start of the pullback, a start of the recording, etc.), at each step during pullback 725, and using observed appearance of elliptical markers, compute orientation of catheter in imaging frame of reference and transform this to the world coordinate system 726. At this point there are a set of observed positions and orientations from each angiogram frame acquired during the pullback. The method further comprises using the world coordinate position of the lens marker at the time the pullback began to integrate the linear and rotational accelerations forward in time, to integrate this modeled trajectory with the observed trajectory obtained from the angiogram run and reference curve (e.g., using a Kalman filter) 727. The method further comprises applying image processing analytics to each frame of the intravascular pullback (e.g. using a CNN, or level set method to extract the arterial wall, stent, etc) to obtain cross sectional curves 728, mapping each extracted cross section to the corresponding point along the reference curve and connect them (e.g., by defining triangles between sets of points on adjacent cross sections) 729 to obtain the time varying 3D surface model 730.
According to an exemplary embodiment of the present invention, the lens marker 106 is one of the elliptical markers 201-202. In a case where the lens marker 106 is a ring shaped marker as shown in
According to an embodiment of the present invention, a method of generating a 4-Dimensional model includes capturing imagery of a catheter and a vessel as the catheter is directed through the vessel to a location of interest, wherein the catheter is disposed on a guidewire, constructing a 3-Dimensional time varying reference curve describing a trajectory of the guidewire, and constructing a time varying 3-Dimensional model of the artery using the reference curve.
Medical images typically adhere to the Digital Imaging and Communications in Medicine (DICOM) format once they are transferred from an imaging system that acquires them to a database system (e.g., Picture Archiving and Communication System (PACS)). At this point, metadata regarding medical images (e.g., angiogram RAO-LAO, SID, pixel spacing, etc., or OCT pixel spacing, etc.) can be embedded in appropriate DICOM header fields. According to an embodiment of the present invention, rotational information about a catheter is encoded in medical images. According to at least one embodiment of the present invention, the IMU acceleration and IVUS/OCT imaging data are intercepted (e.g., from the imaging system) and a model is generated before outputting data (e.g., the IMU acceleration and IVUS/OCT imaging data) to the PACS in DICOM format. According to an embodiment of the present invention, the rotational information about a catheter is used in building a 3D model of an artery. According to an embodiment of the present invention, the model so built improves the accuracy of computer simulations of hemodynamics (e.g. virtual FFR), leads to improved visualizations of stent placement (improving outcomes for patients), allows for wall shear stress to be determined on a patient specific basis (stenosis form in areas of low shear stress) as a possible predictor of restenosis, and enables personalized stent design and deployment.
According to an embodiment of the present invention, an accelerometer and a gyroscope are disposed at the tip of the catheter, near a laser marking system 105. The rotational position of the catheter is recorded and matched to the position of the laser. Integration of this information allows for a complete trajectory of the laser tip to be determined.
According to an embodiment of the present invention, a catheter having an accelerometer and a gyroscope enables improved visualization of complex stenotic geometry, side branches, stents, and allow for the generation of high resolution 3D computer models of vascular geometries that could be used for computer simulations of blood flow, wall shear stress, generation of personalized stent designs, of stent placement, and once deployed, assessment of their impact on normal haemodynamics.
Embodiments of the present invention utilize high-resolution imaging modalities such as IVUS and intravascular OCT, and is able to determine spatial position and orientation as the catheter steered through the cardiovascular system, building a 4D (i.e., 3D+time varying) representation of the coronary geometry.
Embodiments of the present invention utilize IVUS imaging modality to assess the composition of plaque, thereby informing the treatment plan, and providing information regarding vessel wall and plaque thickness to the 4D model.
According to an embodiment of the present invention, a method of generating a four-dimensional (4D) model during a Percutaneous Coronary Intervention (PCI) procedure includes capturing imagery of a catheter and a vessel 802 as the catheter is directed through the vessel to a location of interest, wherein the catheter is disposed on a guidewire and comprises a plurality of markers and a monitoring body, and wherein the imagery is captured from at least two different viewpoints, segmenting the guidewire and the at least one marker from the imagery and back projecting a segmented guidewire and at least one segmented marker into a three-dimensional (3D) space to define a time varying reference curve defining a motion of the monitoring body 803, recording accelerometer and gyroscope data of the catheter using a combination of sensors as the catheter is pulled away from the location of interest 803, integrating the accelerometer and gyroscope data in time 804, predicting a linear and a rotational position of the monitoring body in the imagery 805, and constructing the 4D model of the monitoring body and the vessel using the predicted linear and rotational position of the monitoring body, wherein the 4D model includes a time varying surface describing the vessel 807.
According to an exemplary embodiment of the present invention, the trajectory of the guidewire is used to determine the position of the lens marker and imaging sensor. Embodiments of the present invention overcome a problem in the art where an imaging system (e.g., X-ray imaging system), a catheter imaging system and an IMU are not synchronized to provide measurements at the same points in time. Embodiments of the present invention facilitate the positioning of images along a reference curve at correct times, at the times that the images were acquired. Exemplary embodiments of the present invention integrate acceleration data forward in time to predict a trajectory of the lens marker and imaging sensor, with periodic corrections to these predictions given an angiogram frame where the position is actually observed.
The methodologies of embodiments of the disclosure may be particularly well-suited for use in an electronic device or alternative system. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “processor,” “circuit,” “module” or “system.”
Furthermore, it should be noted that any of the methods described herein can include an additional step of providing a computer system for generating a 4D model during a PCI procedure. Further, a computer program product can include a tangible computer-readable recordable storage medium with code adapted to be executed to carry out one or more method steps described herein, including the provision of the system with the distinct software modules.
Referring to
In different applications, some of the components shown in
The processor 901 may be configured to perform one or more methodologies described in the present disclosure, illustrative embodiments of which are shown in the above figures and described herein. Embodiments of the present invention can be implemented as a routine that is stored in memory 902 and executed by the processor 901 to process the signal from the media 907. As such, the computer system is a general-purpose computer system that becomes a specific purpose computer system when executing routines of the present disclosure.
Although the computer system described in
The present invention may be a system, a method, and/or a computer program product at any possible technical detail level of integration. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.
The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, configuration data for integrated circuitry, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++, or the like, and procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.