Patent Description:
One aspect of the disclosure provides a method for obtaining a high-resolution image of a region of interest. The method is defined by the independent claim <NUM>.

Another aspect of the disclosure provides a method for obtaining a high-resolution image of one or more regions of interest. The method is defined by a combination of features of claims <NUM> and <NUM>.

Yet another aspect of the disclosure provides a system for obtaining a high-resolution image of a region of interest. The system is defined by the independent claim <NUM>.

Another aspect of the disclosure provides a method (which is not according to the invention and is present for illustration purposes only) comprising: controlling a first camera to capture a first image of a scene; processing the first image to identify a region of interest within the scene; controlling a second camera to capture plural images, wherein each of the plural images relates to a sampling area that constitutes part of but not the whole of a field of view of the second camera, and wherein the sampling area corresponds to the region of interest within the scene; and using a super-image resolution technique to create a high-resolution image of the region of interest within the scene from the plural images captured by the second camera.

An implementation incorporating these features can allow the first camera to be used for purposes other than capturing images for use in super-image resolution processing whilst not requiring the second camera to be used for purposes other than super-image resolution image generation. This can allow simple system design, and can allow relatively unsophisticated cameras to be used. By controlling the second camera to capture images relating to a sampling area that constitutes part of but not the whole of a field of view of the second camera, additional visual information from the region of interest may be derived without requiring additional capture of information from other areas of the field of view. Additionally, the avoidance of additional capture of information can be achieved at hardware level, thereby avoiding the overhead that would be associated with capturing image data that is not processed. Super-image resolution processing may be performed at or local to a device incorporating the first and second cameras, which can minimize utilization of communication resources to transmit image data. Alternatively, super-image resolution processing may be performed remotely to a device incorporating the first and second cameras, for instance at a remote server or in the cloud. This can reduce the processing requirements of the device incorporating or connected locally to the first and second cameras, and can also reduce overall processing since it allows processing of the same information captured by different capturing devices (at substantially the same time or at different times) to be avoided. Features of the embodiments can allow information contained in regions of interest within the scene to be obtained (using super-image resolution processing) whilst allowing panoramic or other relatively wide field of view camera equipment as the first camera.

The method may comprise controlling the second camera to capture plural images relating to a sampling area that is larger than and encompasses the region of interest within the scene.

This method may comprise controlling the second camera to capture plural images relating to a sampling area that has dimensions dependent on parameters derived from captured images.

The method may comprise: processing the first image to identify at least two regions of interest within the scene; controlling the second camera to capture plural images for each of plural sampling areas, wherein each sampling area corresponds a respective region of interest within the scene; and using a super-image resolution technique to create a high-resolution image of each region of interest of the scene from the plural images captured by the second camera.

This method may comprise: selecting a subset of the regions of interest; and controlling the second camera to capture plural images for each of plural sampling areas, wherein each sampling area corresponds a respective selected region of interest within the scene.

The method may comprise comprising controlling the second camera to capture images at a capture rate higher than a capture rate of the first camera.

The method may comprise tracking the region of interest to a different position within the field of view of the first camera; and controlling the second camera to capture images from a different portion of the field of view of the second camera, wherein the different portion of the field of view of the second camera corresponds to the different position within the field of view of the first camera.

Processing the first image to identify at least one region of interest within the scene may comprise using hardware configured to detect image data with characteristics of interest without executing computer code.

This can allow implementation in a relatively power efficient manner and without utilizing significant computing processing resources, which can therefore be omitted or allocated to other tasks. By configuring the hardware for detecting image data in a suitable manner, the hardware can be re-used for detecting regions of interest in images from multiple camera sensors and/or from a given camera sensor at different times, thereby providing a relatively efficient use of the hardware.

The method may comprise processing the first image to identify at least one region of interest within the scene comprises detecting text in the scene.

This can allow the detection of semantic information such as road signs, store titles, door numbers etc. In turn, this can allow the relatively frequent updating of information in databases such as transport infrastructure databases, map databases, geographic information databases etc. By updating map or geographic information databases (such as may be used to provide the system known as Google Maps, and other such services) relatively frequently, users can be provided with more up-to-date geographic information. By updating transport infrastructure databases (such as may be used by autonomous vehicles or by navigation guidance services), guidance and/or navigation functions can be improved by reducing occurrences of incorrect information being used in decision-making and route-planning. Relevant prior art is: <CIT>and <CIT>.

Aspects, features and advantages of the disclosure will be appreciated when considered with reference to the following description of embodiments and accompanying figures. Furthermore, the following description is not limiting; the scope of the present technology is defined by the appended claims and equivalents. For example, while certain processes in accordance with example embodiments are shown in the figures as occurring in a linear fashion, this is not a requirement unless expressly stated herein. Different processes may be performed in a different order or concurrently. Steps may also be added or omitted unless otherwise stated.

As shown in <FIG>, a vehicle <NUM> in accordance with one aspect of the disclosure includes various components. The vehicle <NUM> may be any one of a car, boat, plane, etc. The vehicle <NUM> may also be an autonomous vehicle. The vehicle <NUM> may have one or more computing devices, such as the computing device <NUM>, which contains processor <NUM>, memory <NUM>, instructions <NUM>, data <NUM>, and other components typically present in general purpose computing devices.

The processor <NUM> may be any conventional processor, such as commercially available CPUs. Alternatively, the processor <NUM> may be a dedicated device such as an ASIC or other hardware-based processor. Although <FIG> functionally illustrates the processor, memory, and other elements of computing device <NUM> as being within the same block, it will be understood by those of ordinary skill in the art that the processor, computing device, or memory may actually include multiple processors, computing devices, or memories that may or may not be stored within the same physical housing. For example, memory may be a hard drive or other storage media located in a different housing from that of computing device <NUM>. Accordingly, references to a processor or computing device will be understood to include references to a collection of processors or computing devices or memories that may or may not operate in parallel.

The memory <NUM> stores information accessible by the processor <NUM>, including instructions <NUM> and data <NUM> that may be executed or otherwise used by the processor <NUM>.

The data <NUM> may include detailed map information, e.g., highly detailed maps identifying the shape and elevation of roadways, lane lines, intersections, crosswalks, speed limits, traffic signals, buildings, signs, real time traffic information, vegetation, or other such objects and information. Furthermore, the data may be stored in computing device registers, in a relational database as a table having a plurality of different fields and records, XML documents or flat files.

As shown in <FIG>, the computing device <NUM> may be capable of communicating with various components of the vehicle <NUM>. For example, the computing device <NUM> may be in communication with GPS receiver <NUM>, laser sensors <NUM>, accelerometer <NUM>, gyroscope <NUM>, object identification camera <NUM>, and sampling camera <NUM>. Although these systems are shown as being external to computing device <NUM>, these systems may also be incorporated into computing device <NUM>. Computing device <NUM> may also include one or more wireless network connections to facilitate communication with other computing devices. The wireless network connections may include short range communication protocols such as Bluetooth, Bluetooth low energy (LE), cellular connections, as well as various configurations and protocols including the Internet, World Wide Web, intranets, virtual private networks, wide area networks, local networks, private networks using communication protocols proprietary to one or more companies, Ethernet, WiFi and HTTP, and various combinations of the foregoing.

The GPS receiver <NUM> may be used by the computing device <NUM> to determine the relative or absolute position on a map or on the earth of the vehicle <NUM>. For example, the GPS receiver <NUM> may be used by the computing device <NUM> to determine the latitude, longitude and/or altitude position of the vehicle <NUM>.

The laser sensors <NUM> (e.g., LIDAR sensors) may be used by the computing device <NUM> to generate a point cloud representation of nearby objects. A point cloud representation is a representation of the dimensions of the real-world objects, such as buildings, facades, windows, etc. within the image. For example, a laser generates a beam that is aimed at different objects within a location, such as a neighborhood. The sensor associated with the laser collects the laser beam that is reflected from the real-world objects and generates a point cloud in the (x, y, z) coordinate system that is based on the collected laser beam. A person skilled in the art will appreciate that an "x" coordinate indicates the horizontal axis in the point cloud, a "y" coordinate indicates a vertical axis in the point cloud, and a "z" coordinate indicates a depth in the point cloud. Thus, when a laser sprays a laser beam onto the building, the resulting point cloud reflects the facade, roof, windows, doors, etc. that are of varying depths of the sprayed building. A person skilled in the art will appreciate that the denser the laser spray, the more accurate the point cloud of the actual real-world object is produced.

The accelerometer <NUM> and the gyroscope <NUM> may be used by the computing device <NUM> to determine the direction and speed of the vehicle <NUM> or changes thereto. By way of example only, these devices may be used by the computing device <NUM> to determine the pitch, yaw or roll (or changes thereto) of the vehicle <NUM> relative to the direction of gravity or a plane perpendicular thereto. These devices may also be used to log increases or decreases in speed and the direction of such changes.

The object identification camera <NUM> and the sampling camera <NUM> may be used by the computing device <NUM> as part of a camera-based localization system. The object identification camera <NUM> and the sampling camera <NUM> can be arranged, for example, in a cluster on the roof of the vehicle <NUM>. The object identification camera <NUM> and the sampling camera <NUM> may also be placed in a protective housing. Furthermore, if parallax is a concern, both cameras can share a lens (e.g., shared lens <NUM>) and have common field of view ("FOV") through the use of one or more beam-splitters and/or image-splitters (e.g., image splitter <NUM>).

The object identification camera <NUM> may be used to capture full-frame images at a nominal rate. The object identification camera <NUM> has an FOV that fully encompasses the FOV of the sampling camera <NUM>. The computing device <NUM> analyzes the images captured by the object identification camera <NUM> to identify regions of interest ("ROIs"). A region of interest may include semantic information, such as a sign or storefront text, or any other object of interest. The computing device <NUM> may utilize a hardware-accelerated machine learning model to identify and rank ROIs based on one or more of the following: actual or potential semantic content contained within the ROI, location of the ROI relative to other objects (e.g., an ROI located at or near a storefront is likely to contain high-value information such as store hours, notices, etc.), estimated persistence of the ROI within the FOV of the sampling camera <NUM>, other characteristics such as the size, color, and contrast of the ROI, user-defined parameters, etc. ROIs below a certain rank may, for example, be ignored by the computing device <NUM>.

The sampling camera <NUM> is dedicated to capturing partial-frame images at a rapid rate. After the computing device <NUM> has identified a list of one or more ROIs, it configures the sampling camera <NUM> to capture images of one or more sampling areas within the sampling camera <NUM>'s FOV. Each of the sampling areas comprises at least one ROI. The sampling areas may also comprise a buffer region around the one or more ROIs. The buffer region can be used to compensate for estimation errors that arise from tracking the ROI(s). The sampling areas may be a basic shape, such as a rectangle, or they may resemble the shapes of the ROI(s). The shape of the sampling areas may also be based on the predicted movement of vehicle <NUM>. Once the sampling camera <NUM> is configured, it can rapidly capture images of the one or more sampling areas. The rate at which the sampling camera <NUM> can capture images of the one or more sampling areas is dependent on the size of those areas. Specifically, the smaller the sampling areas, the more rapidly the sampling camera <NUM> can capture images of those areas.

While the sampling camera <NUM> is capturing images, the location(s) of the ROI(s) within its FOV may change. As a result, it may be necessary to change the size, shape, and/or location of the sampling areas over time. The computing device <NUM> may utilize a contour-based video tracking algorithm to follow the ROI(s). For example, the computing device <NUM> can estimate the trajectory of a particular ROI by comparing two or more full-frame images captured by the object identification camera <NUM>. The location of that particular ROI within the two or more full-frame images may be identified by maximizing a similarity parameter.

Over time, the computing device <NUM> may update the list of ROIs. For example, as vehicle <NUM> moves, some ROIs may leave the FOV of the sampling camera <NUM> and other new ROIs may enter the FOV of the sampling camera <NUM>. Thus, the computing device <NUM> may need to reconfigure the sampling camera <NUM> by eliminating sampling areas associated with ROIs outside the FOV of the sampling camera <NUM> and adding sampling areas that comprise at least one new ROI.

After the sampling camera <NUM> has rapidly captured a plurality of images of the one or more sampling areas, the computing device <NUM> can utilize a super-resolution technique to synthesize a high-resolution image of the one or more ROIs. This process may involve cropping the captured images to remove a buffer area. The process may also involve aligning and/or resizing the cropped images of the ROIs. Ultimately, by using a super-resolution technique, the computing device <NUM> can generate imagery which exceeds the spatial resolution of the object identification camera <NUM> and the sampling camera <NUM>.

With high-resolution images of ROIs, the computing device <NUM> can more effectively control the vehicle <NUM>. For example, by using the object identification camera <NUM> and the sampling camera <NUM> as described above, the computing device <NUM> may be able more accurately resolve the text on a sign or a nearby storefront. The computing device <NUM> can then use this information to determine or verify the location of the vehicle <NUM> previously obtained from the GPS receiver <NUM>. The high-resolution images of ROIs may also allow the computing device <NUM> to react more quickly to the surrounding environment. For example, the computing device <NUM> may be able to resolve the text on a stop sign or a yield sign from farther away. Higher resolution imagery may also aid the computing device <NUM> in constructing more robust depth data. For example, the computing device <NUM> may employ an edge-detection technique on a high resolution image of an ROI and use those results to verify the accuracy of a corresponding point cloud representation obtained from the laser sensors <NUM>.

While a number of components of the vehicle <NUM> are described above and illustrated in <FIG>, it should be understood that any number of additional components may be included. Moreover, some components that are illustrated may be omitted.

<FIG> illustrate various aspects of the technology described above. <FIG> depicts FOV <NUM>, which is associated with an object identification camera, and FOV <NUM>, which is associated with a sampling camera. Both cameras are located on the roof of a car with one or more computing devices. In this illustration, the FOVs of the two cameras are identical. At the moment in time depicted in <FIG>, both cameras can see buildings <NUM> and <NUM>. Building <NUM> includes window <NUM>, which contains the text "Big Bank" in a first font, such as an Old English Text MT font. Building <NUM> includes sign <NUM>, which contains the text "Bagel Shop" in a second font, such as a Bernard MT Condensed font. Window <NUM> and sign <NUM> are non-limiting examples of potential ROIs that a car utilizing the present technology may come across. Other ROIs may contain, for example, text having a different size, font, typeface, color, content, etc. In this example, window <NUM> and sign <NUM> are ROIs. In FOV <NUM>, everything is depicted with a solid line because everything is captured by the object identification camera. However, in FOV <NUM>, only the portions of the objects within sampling areas <NUM> and <NUM> are depicted with solid lines. This is because the sampling camera only captures the content within the sampling areas <NUM> and <NUM>. Everything else is ignored.

In <FIG>, the sampling areas <NUM> and <NUM> have shapes that roughly approximate window <NUM> and sign <NUM>, the ROIs. However, the sampling areas <NUM> and <NUM> are not centered on these objects. Instead, the buffer region on the left sides of window <NUM> and sign <NUM> is larger than the buffer region on the rights sides of those objects. This may be advantageous when the vehicle is traveling below the speed limit. In such a situation, the vehicle is more likely to accelerate at any given moment. Thus, to ensure that window <NUM> and sign <NUM> are within the sampling areas <NUM> and <NUM>, the buffer region must be large enough to accommodate the scenario where the vehicle maintains speed and the scenario where the vehicle accelerates.

<FIG> illustrates what the cameras of <FIG> may see at a later point in time. In <FIG>, FOV <NUM> is associated with the object identification camera and FOV <NUM> is associated with the sampling camera. At the moment in time depicted in <FIG>, both cameras can still see buildings <NUM> and <NUM>. However, a portion of building <NUM> is now outside FOVs <NUM> and <NUM>. Furthermore, FOVs <NUM> and <NUM> now include sign <NUM>, which pictorially indicates that there is a bus stop nearby. Much like FOV <NUM>, everything in FOV <NUM> is depicted with a solid line because everything is captured by the object identification camera. Furthermore, much like FOV <NUM>, only the portions of the objects within sampling areas <NUM> and <NUM> are depicted with solid lines, because the second camera only captures the portions of the objects within those areas. However, in <FIG>, window <NUM> is not included in a sampling area. Instead, sign <NUM> and sign <NUM> are included in sampling areas <NUM> and <NUM> respectively. In this scenario, the one or more computing devices may have ranked window <NUM>, sign <NUM>, and sign <NUM>, and determined that window <NUM> had too low of a rank. For example, the computing device may be configured to only generate sampling areas for the two ROIs with the highest rankings. As shown in <FIG>, window <NUM> would likely have a low rank because a large portion of it is outside FOV <NUM>.

<FIG> demonstrates that a vehicle utilizing the present technology may include multiple object identification cameras and multiple sampling cameras. For example, the vehicle described in <FIG> and <FIG> may have a backwards-facing object identification camera with FOV <NUM> and a backwards-facing sampling camera with FOV <NUM>. Much like the scenario depicted in <FIG>, the backwards-facing cameras can see buildings <NUM> and <NUM>, window <NUM>, and sign <NUM>. Furthermore, the sampling camera is capturing the content within sampling areas <NUM> and <NUM>. In this scenario, the one or more computing devices can utilize images from the front-facing sampling camera and the backwards-facing sampling camera to generate a high-resolution image of window <NUM> and sign <NUM> using a super-resolution technique. This may be accomplished, in part, by cropping and aligning the images obtained both sampling camera. Furthermore, the super-resolution technique can be performed in the spatial domain (e.g., using Maximum Likelihood ("ML"), Maximum a Posteriori ("MAP"), or Projection onto Convex Sets ("POCS") methods) or the frequency domain (e.g., using the shift and aliasing properties of the Continuous and Discrete Fourier Transforms). The super-resolution technique may also involve machine learning. For example, a computing device can be trained to learn the relationship between pairs of low-resolution and high-resolution images of the same ROI.

<FIG> demonstrates that the FOVs of the object identification cameras and the sampling cameras do not need to be identical. For example, as shown in <FIG>, FOV <NUM>, which is associated with an object identification camera, can contain more content than FOV <NUM>, which is associated with the sampling camera of <FIG>. As shown in <FIG>, the object identification camera can see sign <NUM>, but the sampling camera cannot. In other related examples, more than one sampling camera may be used with a particular object identification camera. For example, the object identification camera may have an FOV that contains the FOVs of two or more sampling cameras. Therefore, information obtained from the object identification camera can be used to configure the sampling areas used by the two or more sampling cameras. Similarly, multiple object identification cameras can be used with a single sampling camera. In such a scenario, the object identification cameras may have a combined FOV that contains the FOV of the singular sampling camera.

<FIG> illustrates portions of the super-resolution process that may be used by the one or more computing devices of the vehicle of <FIG>. In <FIG>, the input images <NUM>-<NUM> have different shapes and sizes. The input images <NUM>-<NUM> were obtained from the sampling cameras of <FIG>. The ROI (i.e., sign <NUM> from <FIG>) has a different location within each of the input images <NUM>-<NUM>. This is due to the estimation error resulting from when the one or more computing devices attempted to predict the location of the ROI within the FOV of the sampling cameras as the vehicle moved. As shown in <FIG>, the input images <NUM>-<NUM> are cropped to create the cropped images <NUM>-<NUM>. The cropping process removed the area surrounding the ROI in the input images <NUM>-<NUM>. By using a super-resolution technique, the one or more computing devices can generate the high-resolution image <NUM> from cropped images <NUM>-<NUM>. The super-resolution technique can be performed in the spatial domain (e.g., using Maximum Likelihood ("ML"), Maximum a Posteriori ("MAP"), or Projection onto Convex Sets ("POCS") methods) or the frequency domain (e.g., using the shift and aliasing properties of the Continuous and Discrete Fourier Transforms). The super-resolution technique may also involve machine learning. For example, a computing device can be trained to learn the relationship between pairs of low-resolution and high-resolution images of the same ROI. By using the high-resolution image <NUM>, the one or more computing devices can more accurately interpret the text of the ROI.

<FIG> illustrates a method in accordance with the present technology. The method may be implemented by a vehicle including, for example, a computing device, an object identification camera, and a sampling camera. While operations of the method are described in a particular order below, it should be understood that the order of the operations may be modified. Moreover, some operations may be performed simultaneously. Further, operations may be added or omitted.

In block <NUM>, the object identification camera is used to capture a full-frame image at a nominal rate. The FOV of the object identification camera fully encompasses the FOV of the sampling camera. Therefore, the full-frame image may capture the entire scene within the FOV of the sampling camera at a particular point in time.

In blocks <NUM> and <NUM>, one or more ROIs are identified within the full-frame image and ranked. For example, a computing device may utilize a hardware-accelerated machine learning model to identify and rank ROIs based on one or more of the following: actual or potential semantic content contained within the ROI, location of the ROI relative to other objects (e.g., an ROI located at or near a storefront is likely to contain high-value information such as store hours, notices, etc.), estimated persistence of the ROI within the FOV of the sampling camera, other characteristics such as the size, color, and contrast of the ROI, user-defined parameters, etc..

In block <NUM>, some of the identified ROIs are selected based on their rankings. In block <NUM>, a sampling camera is configured to capture images consisting essentially of one or more sampling areas containing the selected ROIs. The sampling areas may also comprise a buffer region around the one or more ROIs. The buffer region can be used to compensate for estimation errors that arise from tracking the ROI(s). The sampling areas may be a basic shape, such as a rectangle, or they may resemble the shapes of the ROI(s). The shape of the sampling areas may also be based on the predicted movement of the vehicle.

In block <NUM>, another full-frame image is captured by the object identification camera. In blocks <NUM> and <NUM>, the new full-frame image is analyzed to determine whether any of the selected ROIs moved and whether any of the selected ROIs outside the FOV of the sampling camera. If a selected ROI simply moved, but it is still within the FOV of the sampling camera, then the sampling camera needs to be reconfigured. On the other hand, if an ROI moved outside the FOV of the sampling camera, then presumably the sampling camera cannot capture any more images of that ROI. Therefore, the method can proceed to block <NUM>.

In block <NUM>, a super-image resolution technique is used to create high-resolution images of the selected ROIs that moved outside the FOV of the sampling camera from a plurality of images captured by the sampling camera. After block <NUM> is complete, the method can be repeated and new high-resolution images of different ROIs can be created over time.

An implementation incorporating the technology disclosed herein can allow a first camera to be used for purposes other than capturing images for use in super-image resolution processing whilst not requiring a second camera to be used for purposes other than super-image resolution image generation. This can allow simple system design, and can allow relatively unsophisticated cameras to be used. By controlling the second camera to capture images relating to a sampling area that constitutes part of but not the whole of a field of view of the second camera, additional visual information from the region of interest may be derived without requiring additional capture of information from other areas of the field of view. Features of the embodiments can allow information contained in regions of interest within a scene to be obtained (using super-image resolution processing) whilst allowing panoramic or other relatively wide field of view camera equipment as the first camera.

Additionally, the avoidance of additional capture of information can be achieved at hardware level, thereby avoiding the overhead that would be associated with capturing image data that is not processed. Super-image resolution processing may be performed at or local to a device incorporating the first and second cameras, which can minimize utilization of communication resources to transmit image data. Alternatively, super-image resolution processing may be performed remotely to a device incorporating the first and second cameras, for instance at a remote server or in the cloud. This can reduce the processing requirements of the device incorporating or connected locally to the first and second cameras, and can also reduce overall processing since it allows processing of the same information captured by different capturing devices (at substantially the same time or at different times) to be avoided.

Aspects of the present technology also can allow the detection of semantic information such as road signs, store titles, door numbers etc. In turn, this can allow the relatively frequent updating of information in databases such as transport infrastructure databases, map databases, geographic information databases etc. By updating map or geographic information databases relatively frequently, users can be provided with more up-to-date geographic information. By updating transport infrastructure databases (such as may be used by autonomous vehicles or by navigation guidance services), guidance and/or navigation functions can be improved by reducing occurrences of incorrect information being used in decision-making and route-planning.

The present technology has mostly been described in the context of autonomous vehicles. However, aspects of the systems and methods described above may also be useful in other contexts. For example, a vehicle designed to collect street-view images could benefit from having an object identification camera and a sampling camera similar to those described above. In this scenario, portions of the full-frame images captured by the object identification camera could be enhanced by the high-resolution images of ROIs generated from the low-resolution images obtained from the sampling camera. Thus, the vehicle could collect higher quality street-view images. The present technology also has potential uses in aerial and multispectral imagery where one may be interested in imaging and identifying certain types of objects from a higher altitude. The present technology may also reduce hardware costs. Generally, a collection of cameras capable obtaining raw low-resolution imagery is often less expensive than a larger, single-lens system capable of obtaining raw high-resolution raw imagery.

Claim 1:
A method for obtaining a high-resolution image of a region of interest, the method comprising:
obtaining, using one or more processors, a first image from a first camera;
identifying, using the one or more processors, a region of interest within the first image;
configuring, using the one or more processors, a second camera to capture partial-frame images of a sampling area containing the region of interest, wherein the sampling area consists of some, but not all, of a field of view of the second camera, wherein a field of view of the first camera fully encompasses the field of view of the second camera;
obtaining, using the one or more processors, a second image from the first camera;
comparing, using the one or more processors, the first and second image;
determining, using the one or more processors, in dependence on the comparison, whether the region of interest has moved within the field of view of the second camera; and
reconfiguring, using the one or more processors, one or more of the size, shape, or location of the sampling area to contain the region of interest if the region of interest has moved while the second camera is capturing the partial-frame images of the sampling area;
receiving, using the one or more processors, a plurality of images captured by the second camera; and
creating, using the one or more processors, an enhanced image of the region of interest from the plurality of images captured by the second camera, wherein a resolution of the region of interest within the enhanced image is higher than a resolution of the region of interest within any one of the plurality of images captured by the second camera.