Patent Description:
It is common practice in the oil and gas industry to make measurements of formation properties ('Open Hole') or pipe components ('Cased Hole') by lowering instruments down the well on cables or coiled tubing. The depth location of the objects being investigated is commonly estimated by determining the length of cable or tubing spooled into the hole.

Due to stretch of the cable or coiled tubing and variations in friction throughout the whole system, this depth estimate is often inaccurate.

It is also possible to estimate the depth of a tool by using data obtained from sensors such as accelerometers or head tension devices, which can provide information on the behaviour of the tool itself rather than the cable or coiled tubing. While the data from such sensors can be used to estimate the change in position of a tool over a relatively short distance, the accuracy of this approach tends to decrease with increasing distance.

<CIT> discloses a method for determining a corrected axial displacement parameter of a conduit inspection tool in a wellbore, in which logging data relating to a physical or geometrical property of a zone surrounding the wellbore is obtained and analysed.

<CIT> discloses a method for managing a drilling operation in which a drilling speed is determined based on a time-shift determined from two data logs obtained respectively from two sensors separated on the drilling tool by a predetermined distance.

Against that background, it would be desirable to provide methods and systems for estimating the velocity and depth of a downhole tool that offer increased accuracy compared to known methods and systems.

Methods and systems disclosed herein provide a means to correct surface measurements of depth and tool speed which are prone to errors, for example from stretch of the cable or coiled tubing supporting the inspection tool or due to friction between the tool and the conduit causing stick/slip behaviour. The measurements obtained by the methods and systems can provide precise depth locations of downhole components and pipe or conduit anomalies which may be used during production optimisation and for planning well interventions.

From a first aspect, the present invention provides a method for determining a corrected axial displacement parameter of a conduit inspection tool having an imaging device comprising one or more sideview cameras or a downview camera. The displacement parameter is a velocity or a displacement distance. The method comprises:.

With this method, a corrected axial displacement parameter such as a displacement distance or velocity of the tool is obtained that has improved accuracy compared to prior art methods. In particular, by combining data derived from the images obtained by the tool and a displacement estimate derived from a different source, the corrected displacement parameter of the tool captures high-frequency changes in velocity due to friction between the tool and the conduit whilst remaining consistent with the displacement measured between the reference transit times.

The tool may be attached to a control module with a connecting line. In this case, determining the estimated axial displacement distance of the tool may comprise making a displacement measurement of the connecting line at the control module. The estimated axial displacement distance of the tool may be taken as the displacement distance of the connecting line or, alternatively, determining the estimated axial displacement distance of the tool may comprise determining, from the displacement measurement of the connecting line, an estimated axial velocity of the tool as a function of transit time and integrating the estimated axial velocity with respect to time over the interval of transit time.

In cases where the spacing between the reference features is known, the estimated axial displacement distance of the tool can be taken to equal a known spacing distance between the corresponding reference features.

When the displacement parameter is a velocity, the total axial displacement distance of the tool within the interval of transit time is determined by integrating the corrected axial velocity with respect to time over the interval of transit time.

The observed axial velocity of the tool may be determined in units of image pixels per unit time. The method may comprise converting the observed axial velocity to units of distance per unit time before computing the corrected axial velocity of the tool. In an alternative approach, when the observed axial velocity of the tool is determined in units of image pixels per unit time, a conversion from pixels per unit time to distance per unit time can be incorporated into the correction factor. The correction factor may therefore have units of distance per unit pixel. With this approach, it is not necessary determine a conversion factor to convert the observed axial velocity to units of distance per unit time before computing the corrected axial velocity of the tool.

When the displacement parameter is velocity, the method may further comprise integrating the corrected axial velocity with respect to time to determine a corrected displacement distance of the tool as a function of time.

When the displacement parameter is a displacement distance, the total axial displacement distance of the tool within the interval of transit time is determined as the difference in corrected axial displacement distance over the interval.

The observed axial displacement distance of the tool may be determined in units of image pixels. The method may comprise converting the observed axial displacement distance to units of distance by applying a conversion factor to the observed axial displacement distance before computing the corrected axial displacement distance of the tool. Alternatively, a conversion from pixels to distance units can be incorporated into the correction factor.

When a conversion factor for converting pixels to distance units is required, in some embodiments, the method may comprise disposing a reference marker of known dimension on or against the internal wall of the conduit within a field of view of the camera such that the reference marker is visible in one or more of the obtained images, identifying the reference marker in an image corresponding to a transit time, determining the number of image pixels occupied by the known dimension of the reference marker, and determining the conversion factor for that transit time based on the determined number of image pixels and the known dimension of the reference marker. The marker may be a physical member or a visual marker projected from the tool. The reference marker may be a blade or other structure of known width, where the width dimension of the reference marker extends circumferentially with respect to the conduit. Preferably, the tool comprises the reference marker.

The tool may comprise a further sensor offset axially with respect to the imaging device. The method may then comprise determining a corrected displacement position of the further sensor by applying an axial offset to the corrected displacement distance of the tool.

The correction factor may be constant within each transit time interval between successive reference transit times. Alternatively, the correction factor may vary according to the internal diameter of the conduit within each interval of transit time. For example, the method may comprise measuring the internal diameter of the conduit as a function of transit time, and the correction factor may vary within each interval of transit time as a function of the measured internal diameter. The internal diameter of the conduit is preferably measured during transit of the tool, for example with a suitable measuring device carried on the tool.

The imaging device preferably comprises a sideview camera arranged such that a centreline of the field of view of the camera is substantially perpendicular to a longitudinal axis of the inspection tool. The imaging device may comprise a plurality of such sideview cameras, arranged such that a centreline of the field of view of each of the cameras lies in a common plane. In another embodiment, the imaging device comprises a downview camera arranged such that a centreline of the field of view of the camera is substantially parallel to a longitudinal axis of the inspection tool.

The corrected axial displacement parameter determined by the method of the invention may be useful in interpreting the image data obtained by the imaging device and/or data from other sensors. In particular, the corrected axial velocity or corrected axial displacement distance can be used to obtain accurate values for the depth or position of images or other data points obtained during inspection.

A second aspect of the invention resides in a conduit inspection system comprising:.

The conduit inspection system may comprise a control module and a connecting line attached to the imaging device, the control module being arranged to control movement of the connecting line to transit the tool axially along a conduit. In this case, the computer system may be arranged to determine the estimated axial displacement parameter of the tool by making a displacement measurement of the connecting line at the control module.

The inspection tool may comprise a reference marker of known dimension arranged to contact or lie on the internal wall of the conduit within a field of view of the camera, such that the reference marker is visible in one or more of the obtained images. The computer system may be arranged to:.

The computer system may be disposed in whole or in part in the inspection tool, in the control module, and/or in one or more further modules of the system. The computer system may be configured to perform the method of the first aspect of the invention.

Preferred and/or optional steps and features of each aspect of the invention may also be used, alone or in appropriate combination, in the other aspects also.

Embodiments of the present invention will now be described with reference to the accompanying drawings, in which like reference signs are used for like features, and in which:.

<FIG> shows, schematically and in cross-section, an inspection tool <NUM> having an imaging device in the form of a sideways-facing visible light camera <NUM>. The camera <NUM> captures images through a lens disposed in a side wall of the inspection tool <NUM>. The inspection tool <NUM> may comprise a plurality of side view cameras <NUM> such that there are a plurality of corresponding camera lenses spaced equidistantly around the circumference of the inspection tool <NUM>. In these embodiments a centreline of the field of view of the camera <NUM>, or of each of the cameras <NUM>, is substantially perpendicular to a longitudinal axis of the inspection tool <NUM>. These cameras are generally referred to as sideview cameras in the art of wellbore inspection tools.

The tool <NUM> is shown in operation in a pipe or conduit <NUM> of a well or other downhole structure. In this example, the pipe <NUM> is vertically-oriented, but it will be appreciated that the pipe <NUM> could have any orientation and that the local orientation of the pipe may change over its length. The tool <NUM> is suspended on a connecting line or downhole line which in this case comprises a cable <NUM>. The cable <NUM> is attached to a surface control module <NUM>, which is shown schematically in <FIG> only.

The control module <NUM> includes a winch for pulling in and paying out the cable <NUM>, allowing the tool <NUM> to be moved axially along the pipe <NUM>. By "axially", it is meant that the tool <NUM> transits in a direction generally parallel to the longitudinal axis of the pipe. As is generally known in the art, operation of the winch is monitored and logged by the control module <NUM> so that the depth of the tool <NUM> as a function of time can be estimated from a displacement measurement of the cable <NUM>. For example, the length of cable <NUM> payed out or pulled in may be measured directly or determined from the operating speed and direction of the winch, with the estimated depth of the tool <NUM> being equal to the length of cable <NUM> deployed at a given time. The velocity of the tool <NUM> can be estimated by differentiating the estimated depth as a function of time.

The camera <NUM> of the tool <NUM> is arranged to capture successive images of the internal surface of the pipe <NUM> that lie within a field of view <NUM> of the camera <NUM>. Conveniently, the successive images can be captured in the form of a video stream, in which successive images or frames are captured at intervals determined by the frame rate of the video stream.

In <FIG>, the axial extent of a first image 22a is indicated. It will be appreciated that the circumferential extent of the image is not indicated in the cross-sectional view of <FIG> show the position of the tool <NUM> with respect to the pipe <NUM> at subsequent points in time as the tool <NUM> moves along the pipe <NUM>.

As illustrated in <FIG>, as the tool <NUM> moves along the pipe <NUM>, the field of view <NUM> of the camera <NUM> shifts axially. The camera <NUM> then captures a second image 22b, corresponding to the subsequent frame in the video stream. The second image 22b overlaps axially with the first image. <FIG> shows the position of the tool <NUM> when a third image 22c is captured, corresponding to a further subsequent frame in the video stream. The third image 22c overlaps axially with the second image 22b. Further axially-overlapping images are captured as the tool <NUM> continues to move along the pipe <NUM>. The elapsed time or transit time at which each image is obtained is recorded.

The pipe <NUM> includes a plurality of features, indicated generally at <NUM>, that are spaced apart from one another. The features <NUM> may be at a known depth position within the pipe <NUM> or may be at known distances from one another, although it is not necessary that the absolute positions of the features <NUM> with respect to the surface are known. Examples of reference features <NUM> may include collars, joins and junctions, and downhole equipment of various types. These reference features <NUM> provide reference points during subsequent analysis of the images, as will be described in more detail below. The reference features <NUM> are visible in the images when they are within the field of view <NUM> of the camera <NUM>. Accordingly, in the illustrated example, one such reference feature <NUM> would be visible in the third image 22c.

The image data obtained in this way may be logged in the tool <NUM> and retrieved after removal from the tool <NUM> from the pipe <NUM>. Alternatively, or in addition, the image data may be transmitted to the control module <NUM> via the cable <NUM> for logging at the surface.

The present invention provides a method of using image data, such as can be obtained by the tool <NUM> as described above, to obtain a measure of the instantaneous axial velocity of the tool <NUM> during its transit along the pipe <NUM> that can provide a more accurate indication of the depth of the tool at a given transit time than can be obtained by monitoring the operation of the winch alone.

Referring to <FIG>, in a first step <NUM> of the method, a plurality of successive axially-overlapping images are obtained as described above. The transit time at which each image was obtained is also recorded, with the transit time being set to zero when the first image is recorded.

In a second step <NUM>, the overlapping images are analysed to determine, as a function of transit time t, an observed axial velocity of the tool VPimage(t), in units of image pixels per unit time (expressed as pixels per second in this example). In a third step <NUM>, a conversion is applied to the observed axial velocity in pixels per second to obtain an observed axial velocity Vmimage(t) in units of distance per unit time (expressed as millimetres per second in this example).

In a fourth step <NUM>, reference points x are identified in the images. As described above, the reference points are provided by features <NUM> of the pipe <NUM> that are spaced apart from one another in distance, and therefore appear at succeeding transit times in the image data as the tool <NUM> moves along the pipe <NUM>. The transit times at which the reference points appear in the images (or, more accurately, intersect with a central part of the image) define the boundaries of reference transit time intervals, referred to as zones, in the image data.

In a fifth step <NUM>, an estimated axial velocity of the tool Vmcable(t), in units of distance per unit time (expressed as millimetres per second in this example), is determined as a function of transit time from the behaviour of the cable <NUM> at the control module <NUM>. For example, Vmcable(t) may be determined by measurement of the displacement of the cable as a function of transit time, or by direct or indirect measurement of the velocity of the cable.

In a sixth step <NUM>, the estimated axial velocity determined from the control module in the fifth step <NUM>, Vmcable(t), and the observed axial velocity determined from the image data in the third step <NUM>, Vmimage(t), are both integrated with respect to time within each of the zones identified in the fourth step <NUM>. This integration step provides two estimates of the distance traversed by the tool <NUM> between the reference points x, calculated from the behaviour of the cable <NUM> in the first case and the captured image data in the second case.

If Vmcable(t) and Vmimage(t) were both accurate measurements of the tool velocity, the respective distances estimated in step <NUM> would be equal. However, this is typically not the case. In particular, Vmcable(t) cannot account for variations in velocity of the tool <NUM> with respect to the uphole end of the cable <NUM>. Such variations might for example come about through stretching or oscillation of the cable <NUM>, and/or through friction between the tool <NUM> and the wall of the pipe <NUM> that acts to cause stick-slip behaviour of the tool <NUM>. Vmimage(t), on the other hand, can accurately capture such high-frequency variations in the velocity of the tool <NUM>, but typically provides a poorer estimate of average velocity of the tool over a relatively long distance compared to Vmcable(t) due to cumulative errors in the conversion of VPimage(t) to Vmimage(t), for example. <FIG> is an illustrative chart showing the variation of Vmcable(t) and Vmimage(t) with transit time over three reference points x<NUM>, x<NUM>, x<NUM>. As can be seen, Vmcable(t) usually varies only slowly over the time illustrated, while Vmimage(t) exhibits higher-frequency variations.

Referring back to <FIG>, in a seventh step <NUM>, a corrected axial velocity Vmcorr(t) as a function of time of the tool <NUM> is determined. Vmcorr(t) is also in units of distance per unit time (millimetres per second in this example), and is given by: <MAT> where ax is a dimensionless correction factor that is calculated for each zone between adjacent reference points x so that the condition: <MAT> is satisfied for each zone.

Accordingly, Vmcorr(t) is based on the velocity derived from the image data with a correction factor that ensures that, within each zone between adjacent reference points, Vmcorr(t) provides an estimate of the total displacement distance traversed by the tool <NUM> as it passes through the zone that is equal to the displacement distance which can be derived from Vmcable(t). In this way, Vmcorr(t) provides a more accurate estimate of the velocity of the tool <NUM> than either Vmimage(t) or Vmcable(t) alone.

Once Vmcorr(t) has been calculated, an accurate estimate for the displacement distance of the tool <NUM> along the pipe between two time intervals can be obtained by integrating Vmcorr(t) with respect to time between those time intervals. It will be appreciated that Vmcorr(t), and therefore the position estimates that can be derived by integrating Vmcorr(t), relate specifically to the position of the camera <NUM> of the tool <NUM>.

Accordingly, in an optional eighth step <NUM>, an accurate estimate of the downhole position of the camera <NUM> at a given transit time, relative to a given reference position, can be determined by integrating Vmcorr(t) with respect to time between the transit time at the reference position and the transit time of interest.

Where the tool <NUM> includes further sensors disposed above or below the position of the camera <NUM> or is coupled to other tools with further sensors in a toolstring, an accurate estimate of the depth of those sensors can be obtained, in an optional ninth step <NUM>, by applying a suitable offset to the calculated depth of the camera. The offset to be applied can be readily determined from knowledge of the geometry of the tool <NUM> (or the toolstring).

In this way, the images and data from other sensors obtained from the tool <NUM> can be ascribed accurately to a depth or position within the pipe <NUM> for further analysis.

Examples of how the steps of the method illustrated in <FIG> can be implemented in various embodiments of the invention will now be described.

<FIG> is a schematic illustration of two images <NUM>, <NUM> that form part of a set of images obtained in step <NUM>, in an example where the tool (and therefore the camera) is moving downwardly in a pipe <NUM>. In this case, the tool includes a plurality of reference markers in the form of reference blades <NUM>, one of which is visible in both images <NUM>, <NUM>. The reference blades <NUM> comprise metal bands or similar structures of known width that extend from the tool body to contact the wall of the pipe <NUM>. The reference blades <NUM> are arranged so that a region of at least one reference blade <NUM> that is in contact with the pipe wall is within the field of view of the camera, and so that the known width dimension of the blade is perpendicular to the optical axis of the camera. In some arrangements, the reference blades <NUM> are arranged to centralise the tool <NUM> in the pipe <NUM>.

The second image <NUM> is obtained subsequent to the first image <NUM>, so that the second image <NUM> captures a field of view that is shifted downwards in the pipe <NUM> with respect to the first image <NUM>. The axial extent of the two images <NUM>, <NUM> overlaps. In this example, a reference feature <NUM>, such as a collar, is visible in both images. Another surface feature <NUM> is also visible in both images <NUM>, <NUM>.

<FIG> describes one example of a method for determining the observed axial velocity of the tool in pixels per second, VPimage(t), from the images <NUM>, <NUM> (as required in step <NUM> of <FIG>).

First, in step <NUM>, the captured images <NUM>, <NUM> can be adjusted to correct for different lighting conditions, geometrical distortions caused by viewing geometry and other distortions and effects, and to apply a lens calibration to account for individual lens properties.

Then, in step <NUM>, the corrected images <NUM>, <NUM> are pre-processed for subsequent image analysis, as is generally known in the art. Such pre-processing may include contrast enhancement, noise reduction, colour correction, and so on.

In step <NUM>, the pre-processed images <NUM>, <NUM> are analysed by suitable image analysis techniques to determine the shift in the axial (y) direction between the two images <NUM>, <NUM>, Δy (see <FIG>). This may be achieved by finding the overlap position between successive images <NUM>, <NUM> with the maximum cross-correlation of image intensity. Alternatively, other image analysis techniques may be used to automatically detect one or more features common to the two successive images <NUM>, <NUM>, such as the surface feature <NUM> in <FIG>, to determine the extent of overlap.

In step <NUM>, the observed axial velocity of the tool in pixels per second, VPimage, is calculated for the pair of images <NUM>, <NUM> by dividing the y-shift Δy by the time interval Δt between the images <NUM>, <NUM>. Repeating this calculation for successive pairs of overlapping images provides the observed axial velocity VPimage(t) as a function of transit time, where the transit time assigned to each value of VPimage is preferably taken as the mid-point between the capture times of each image <NUM>, <NUM>.

If the images are captured as part of a video stream with frame rate F (in units of frames per second), the observed axial velocity VPimage (in units of pixels per second) can be calculated as VPimage = Δy.

To convert VPimage(t) to Vmimage(t) (step <NUM> of <FIG>), the distance on the surface of the pipe <NUM> that is represented by each pixel in an image <NUM>, <NUM> after correction must be determined or estimated. This relationship depends primarily on the local internal diameter of the pipe <NUM>. The refractive index of the fluid in the pipe <NUM>, properties of the lens of the camera <NUM>, and environmental effects on the lens can also affect the conversion factor between pixels and distance, but these factors are slowly varying and/or can be corrected in the calibration/correction step <NUM> and are therefore ignored in this example.

<FIG> is a schematic diagram illustrating the imaging geometry as the camera <NUM> of the tool passes along a pipe <NUM> having a shoulder <NUM> at which the internal diameter of the pipe <NUM> changes. Above the shoulder <NUM>, the internal diameter is relatively large, and below the shoulder <NUM> the internal diameter is relatively small. The field of view <NUM> when the camera <NUM> is above the shoulder <NUM> captures a larger physical area of the internal wall of the pipe <NUM> than when the camera <NUM> is below the shoulder <NUM>. The camera <NUM> produces images of equal pixel dimensions in both cases. Accordingly, when the camera <NUM> is above the shoulder <NUM>, each pixel in the resulting image corresponds to a larger distance compared to when the camera <NUM> is below the shoulder <NUM>.

<FIG> shows the variation of VPimage(t) as a function of time in a situation like that illustrated in <FIG>. As the camera passes the position of the shoulder <NUM>, corresponding to reference point x<NUM> in <FIG>, the average value of VPimage(t) drops, even though the velocity of the tool (when expressed as distance per unit time) is approximately constant, as indicated by Vmcable(t).

<FIG> describes a method of converting VPimage(t) to Vmimage(t) (step <NUM> of <FIG>) using the reference blades <NUM> described above (see <FIG>) to establish the distance represented by each pixel in each image <NUM>, <NUM>.

First, in step <NUM>, image analysis is used to identify the pixels in the corrected images <NUM>, <NUM> that are occupied by the reference blade <NUM>. Then, in step <NUM>, the width of the reference blade <NUM> in pixels is measured from the images. Then, in step <NUM>, a conversion factor Qref in millimetres per pixel is determined, based on the known width of the reference blade <NUM>. Finally, in step <NUM>, Vmimage(t) can be calculated as: <MAT>.

Once Vmimage(t) has been calculated in this way, the corrected axial velocity of the tool Vmcorr(t) can be determined, along with the corrected position of the camera and further sensors as described above with reference to steps <NUM> to <NUM> of <FIG>.

The conversion factor Qref will vary as a function of transit time if the diameter of the pipe is not constant. Preferably, therefore, the method of <FIG> is performed for each value of VPimage(t). However, if the diameter of the pipe is known to be constant or slowly varying, it may be sufficient to establish a single value of the conversion factor Qref for the whole inspection run or for each of the zones.

A variant of the method of <FIG> can be used if the spacing between reference features <NUM> is known. In this case, an estimated axial velocity of the tool Vmref for each zone can be determined by dividing the known spacing between the reference features <NUM> by the time taken for the tool to transit the corresponding zone, as determined from the images in step <NUM> of <FIG>. This estimated axial velocity Vmref can be used in place of Vmcable(t) in steps <NUM> and <NUM> of <FIG> to compute the corrected axial velocity of the tool. Equivalently, the known spacing between the reference features can be used directly in place of ∫Vmcable(t) dt in step <NUM> of <FIG>. It will be appreciated that, in this variant, displacement measurements of the cable are not required, and so this variant of the method can be used with tools that are not connected to a surface module by a cable or other connecting line.

<FIG> describes another alternative method of calculating a corrected position of the tool <NUM>. In the method of <FIG>, observations and estimates of displacement distance are used in an analogous way to the observations and estimates of velocity in the method of <FIG>.

In step <NUM> of the method of <FIG>, a plurality of successive axially-overlapping images are obtained as described above with reference to step <NUM> of <FIG>. The transit time at which each image was obtained is also recorded, with the transit time being set to zero when the first image is recorded.

In step <NUM>, the observed axial displacement distance of the tool in pixels as a function of transit time, XPimage(t), is determined from the overlapping images. Referring back to <FIG> and <FIG>, the observed axial displacement distance XPimage(t) is equal to the y-shift Δy between successive images.

In step <NUM>, a conversion factor is applied to the observed axial displacement distance in pixels to obtain an observed axial displacement distance Xmimage(t) in units of distance (millimetres in this example). Xmimage(t) can be calculated as: <MAT> where the conversion factor Qref can calculated in the same way as described above with reference to steps <NUM> to <NUM> of <FIG>.

In step <NUM>, reference points x and corresponding zones are identified in the images, as described above with reference to step <NUM> of <FIG>.

In step <NUM>, an estimated axial displacement distance of the tool Xmref, in units of distance (millimetres this example), is determined for each zone. Xmref is an estimate of the total distance moved by the tool as it passes from the start to the end of each zone. Xmref may for example be obtained from direct measurement of the displacement of the cable, or by integrating the measured velocity of the cable Vmcable(t) with respect to time within each zone. Alternatively, if the spacing between reference features <NUM> is known, this spacing can be taken as the estimated axial displacement distance Xmref of the tool as it passes through the corresponding zone.

In step <NUM>, the corrected axial displacement distance of the tool as a function of time, Xmcorr(t), is determined. Xmcorr(t) is also in units of distance and is given by: <MAT>.

The correction factor ax is calculated for each zone between adjacent reference points x so that, within each zone, the total axial displacement distance traversed by the tool within that zone, computed from Xmcorr(t), equals the estimated axial displacement distance Xmref for that zone.

In optional step <NUM>, an accurate estimate of the position of further sensors on the tool or toolstring can be obtained by applying a suitable offset to the corrected axial displacement distance of the tool determined in step <NUM>.

It will be appreciated that, in the case where a known spacing between reference features is used as the estimated axial displacement distance of the tool Xmref in step <NUM> of <FIG>, it is not necessary to obtain a displacement measurement of the cable. The method of <FIG> can therefore also be applied to an inspection tool that is not connected to a surface module by a cable or other connecting line.

The methods described above, in which reference blades <NUM> are used to determine the conversion factor Qref, can be used when the tool <NUM> includes a single sideways-facing camera <NUM>, or when the tool <NUM> includes multiple sideways-facing cameras.

Where multiple sideways-facing cameras are provided, they are preferably arranged to capture the whole circumference of the pipe <NUM> in a plurality of successive sets of circumferentially-overlapping images. The cameras are preferably disposed in a single plane that extends perpendicular to a longitudinal axis of the tool. Accordingly, each of the cameras is disposed at the same distance from an end of the tool.

The multiple (e.g. <NUM>) cameras are mounted symmetrically or equidistantly around the inspection tool and are arranged such that, within a certain range of pipe sizes, there is an overlap in the fields of view of neighbouring cameras. There is, therefore, a corresponding overlap in the captured images from neighbouring cameras.

When image data from multiple cameras is available, one approach is to calculate the observed axial displacement distance or velocity of the tool using the axially-overlapping images from each camera separately, as described with reference to <FIG> and <FIG>, and then average these results. These averaged values can be taken as the observed axial velocity of the tool VPimage(t) as a function of time in step <NUM> of <FIG> or the observed axial displacement distance of the tool XPimage(t) as a function of time in step <NUM> of <FIG>. Taking an average value for the observed velocity or displacement distance of the tool removes or substantially reduces the effect of the tool being non-centred in the pipe <NUM>.

An alternative approach is to perform a circumferential stitching of the synchronised circumferentially-overlapping images from the set of cameras to provide, at each image time interval, a composite image covering the whole circumference of the pipe. The observed axial velocity of the tool VPimage as a function of time or the observed axial displacement distance of the tool XPimage(t) as a function of time can then be obtained by analysis of successive composite images in the manner described above with reference to <FIG> and <FIG>. In this case, any eccentricity of the tool within the pipe <NUM> can be corrected for during circumferential stitching.

When the inspection tool <NUM> does not include reference blades <NUM>, a conversion factor from pixels to distance units cannot be obtained by the method of <FIG>. Instead, if the diameter of the pipe <NUM> is reliably known, the conversion factor required to convert the observed axial velocity from pixels per second to millimetres per second in step <NUM> of <FIG> or the observed axial displacement distance from pixels to millimetres in step <NUM> of <FIG> can be determined from the internal diameter and the imaging geometry.

<FIG> illustrates a variation of the method of <FIG> for determining a corrected axial velocity Vmcorr(t) of the tool <NUM>. In this variant, in step <NUM>, successive overlapping images are obtained using a multi-camera side view tool as described above. Then, in step <NUM>, the average observed axial velocity of tool in pixels per second, VPimage(t), is determined, again as described above.

Steps <NUM> (identification of reference points and zones in the images) and <NUM> (determination of the estimated axial velocity of the tool, Vmcable(t), in units of distance per unit time) of the method of <FIG> are equivalent to steps <NUM> and <NUM> respectively of the method of <FIG>.

In the method of <FIG>, however, VPimage(t) is not converted directly to units of distance per unit time. Instead, in step <NUM>, the integral of Vmcable(t) is used both to account for the conversion factor from pixels to millimetres and to correct errors in the estimated velocity determined from the images. Thus, in step <NUM>, the corrected axial velocity of the tool Vmcorr(t) is calculated as: <MAT> where kx is a correction factor (with units of distance per image pixel) that is calculated for each zone between adjacent reference points x so that the condition: <MAT> is satisfied within each zone. Again, this condition requires that, for each zone, the total displacement distance of the tool derived from the corrected axial velocity equals the estimated displacement distance of the tool over the same zone when calculated from the tool velocity determined from the cable measurements.

The corrected depth of the camera and of other sensors can be calculated from Vmcorr(t) as previously described.

In this way, Vmcorr(t) and corrected depth data for the tool can be determined without knowledge of the internal diameter of the pipe <NUM> and without a reference measurement of the distance per pixel in the images. In doing so, it is assumed that the internal diameter of the pipe <NUM> is constant between each adjacent pair of reference points.

<FIG> shows the variation of kx, Vmcable, Vmcorr and the corrected depth calculated from Vmcorr with respect to the uphole-measured depth of the tool (i.e. the length of cable payed out). In this example, at reference point x<NUM>, the step change in kx corresponds to a change in the internal diameter of the pipe <NUM>.

In some cases, a measurement of the internal diameter of the pipe <NUM> can obtained during data acquisition by including suitable apparatus on the tool <NUM> (or on a toolstring coupled to the tool). Examples of apparatus that can be used to measure the internal diameter include multi-finger caliper devices, laser rangefinders, sonic rangefinders, infra-red rangefinders and so on.

When an independent internal diameter measurement is available, this can be taken into account by adjusting the value of kx in step <NUM> of the method of <FIG>. The distance between the camera and the internal surface of the pipe <NUM> as a function of elapsed time, D(t), can be calculated from the internal diameter measurement data and knowledge of the inspection tool geometry. The average value of the correction factor kxAv within each zone is calculated so that the condition: <MAT> is satisfied within each zone. Then, the value of the correction factor as a function of time within each zone, kx(t), can be calculated as: <MAT> where DxAv is the average distance between the camera and the wall in that zone.

<FIG> shows the variation of kx, Vmcable, Vmcorr and the corrected depth calculated from Vmcorr with respect to the uphole-measured depth of the tool for a case where the internal diameter data is taken into account when determining kx.

If the spacing between reference features is known, the method of <FIG> can be adapted to use an estimated axial velocity Vmref for each zone, calculated by dividing the known spacing between the reference features <NUM> by the time taken for the tool to transit the corresponding zone, in place of Vmcable(t) in step <NUM> of <FIG>,.

<FIG> describes a variation of the method of <FIG>, in which observations and estimates of displacement distance are used instead of observations and estimates of velocity.

In step <NUM> of the method of <FIG>, successive overlapping images are obtained using a multi-camera side view tool as described above. Then, in step <NUM>, the average observed axial displacement distance of the tool in pixels, XPimage(t), is determined as a function of time, again as described above.

Steps <NUM> (identification of reference points and zones in the images) and <NUM> (determination of the estimated axial displacement distance of the tool, Xmref, in units of distance) of the method of <FIG> are equivalent to steps <NUM> and <NUM> respectively of the method of <FIG>.

In step <NUM>, the corrected axial displacement distance of the tool Xmcorr(t) is calculated as: <MAT> where the correction factor kx is calculated for each zone between adjacent reference points x so that the total axial displacement distance over that zone, calculated from Xmcorr(t), is equal to the estimated axial displacement distance Xmref determined in step <NUM>.

<FIG> illustrate the acquisition of images using a tool <NUM> having a downward-facing camera <NUM>, such that the camera <NUM> captures images through a lens disposed at a distal end of the tool <NUM>. This arrangement may be generally referred to as a downview camera in the art of wellbore inspection tools.

Successive overlapping images of the internal surface of the pipe <NUM> captured with a downview camera tool <NUM> can also be used to calculate Vmcorr(t) or Xmcorr(t), for example by following the methods described above with reference to <FIG> or <FIG>.

It will be appreciated, however, that the images acquired by a downview camera include highly distorted regions, and so care must be taken to correct for such distortions.

For example, the determination of the observed axial velocity may be performed on images that are cropped to an effective field of view within which the geometric distortion is relatively small (i.e. not too close to the camera <NUM>) and within which each pixel corresponds to a reasonably small distance on the pipe wall (i.e. not too far from the camera <NUM>). Figures 12a, and 12b12c, show a suitable field of view <NUM> and the resulting axial extent 62a, 62b, 62c of the regions of three successive captured images from which the observed axial velocity or displacement distance can be derived.

Also, the geometrical correction applied to the images (for example in step <NUM> of <FIG>) may be determined by automatically detecting one or more features common to all of the images in the set or plurality of successive images. This common feature or fixed feature may, for example, be the vanishing point. The fixed features are detected by means of suitable image recognition techniques, such as by detecting the characteristic shape and contrast of the far pipe (the vanishing point). One or more moving features are also detected in the set of successive images. These are features that are stationary in the pipe such that the position of these features in successive images captured by the camera moves according to the location of the camera in the pipe. Parts or regions of each of the images having high contrast are automatically detected and their positions are recorded. The change in the spatial positions of the detected moving objects between successive images in the set of images can be detected, and a trajectory for each of the detected moving objects calculated. In a subsequent step, the position of one or more fixed features and the trajectory of one or more moving features are used to determine the position of the camera lens in the pipe and the orientation or angular tilt of the tool axis relative to the pipe axis. This camera position information, including distance of the camera lens from a central axis of the pipe and angular tilt of the tool relative to the axis of the pipe, is then used to calculate a geometrical correction that is applied to the images before subsequent determination of VPimage(t) or XPimage(t).

After suitable geometrical correction, the images obtained from a downview camera tool <NUM>, as illustrated in <FIG>, can be treated substantially identically to those from a sideview camera tool <NUM> in the subsequent processing and analysis steps.

The tool may connected to the control module by any suitable connecting line. The above examples refer to arrangements in which the connecting line comprises a cable. Such a cable could be of any suitable type, and may for example be a slickline or electric line. The connecting line may instead be in the form of tubing, such as coiled tubing or drill pipe. The connecting line may allow communication between the tool and the control module, through electrical, fibre optic or other communication routes, or instead the connecting line may simply support the tool (in which case the data acquired by the tool may be stored by a logging device of the tool and downloaded after retrieval of the tool).

It is also possible that the inspection tool could be of a type in which no connecting line is present. For example, the inspection tool could be a self-propelled robotic tool.

It will be appreciated that, while in the above-referenced examples the imaging device is a visible light camera, other suitable imaging devices may be used in the methods and systems of the invention. For example, suitable alternative imaging devices include non-visible light cameras, such as infra-red cameras.

The devices and/or components described herein can perform one or more processes and/or methods described herein. For example, the devices and/or components can perform at least a portion of such processes and/or methods based on a processor executing software instructions stored by a computer-readable medium, such as memory and/or storage component. A computer-readable medium (e.g., a non-transitory computer-readable medium) is defined herein as a non-transitory memory device. A memory device includes memory space located inside of a single physical storage device or memory space spread across multiple physical storage devices. When executed, software instructions stored in a computer-readable medium may cause a processor to perform one or more processes and/or methods described herein. Additionally, or alternatively, hardwired circuitry may be used in place of or in combination with software instructions to perform one or more processes and/or methods described herein. Thus, embodiments described herein are not limited to any specific combination of hardware circuitry and software.

Claim 1:
A method for determining a corrected axial displacement parameter of a conduit inspection tool having an imaging device (<NUM>) comprising one or more sideview cameras (<NUM>) or a downview camera (<NUM>), said displacement parameter being a velocity or a displacement distance; the method comprising:
obtaining, using the one or more sideview cameras (<NUM>) or the downview camera (<NUM>), a video stream comprising successive axially overlapping images (<NUM>, <NUM>) of an internal wall of a conduit (<NUM>) during transit of the tool (<NUM>) axially along the conduit (<NUM>) and captured at intervals determined by a frame rate of the video stream;
determining, from the images (<NUM>, <NUM>), an observed axial displacement parameter of the tool (<NUM>) as a function of transit time by determining an axial shift in pixels between the images;
identifying, in the images, a plurality of reference features (<NUM>, <NUM>) of fixed position in the conduit (<NUM>);
identifying a corresponding plurality of reference transit times at which said reference features (<NUM>, <NUM>) appear;
determining an estimated axial displacement distance of the tool (<NUM>) over each of a plurality of transit time intervals between successive reference transit times; and
computing the corrected axial displacement parameter of the tool (<NUM>) for each of the plurality of transit time intervals by applying a correction factor to the observed axial displacement parameter;
wherein the correction factors are computed by applying the condition that, within each transit time interval, a total axial displacement distance of the tool (<NUM>) determined from the corrected axial displacement parameter is equal to the estimated axial displacement distance;
and wherein, when the displacement parameter is a velocity, the total axial displacement distance of the tool (<NUM>) within each transit time interval is determined by integrating the corrected axial velocity with respect to time over the transit time interval;
and when the displacement parameter is a displacement distance, the total axial displacement distance of the tool (<NUM>) within each transit time interval is determined as the difference in corrected axial displacement distance over the respective transit time interval.