Patent Description:
Solar panels have found widespread use globally. However, due to high initial capital investment cost, solar panels installed in the field must work properly and efficiently for a period to ensure return on investment. Hence, it is important to maintain the quality of solar panels installed in the field. Due to the mass deployment of solar panels in solar farms (or generally photovoltaic (PV) plants), and the remote deployment of solar panels such as on the roof of houses, it is often difficult to monitor the performance of individual solar panels. Various imaging technologies such as visual, thermal (infrared), ultra-violet (UV) fluorescence, photoluminescence (PL) and electroluminescence (EL) imaging are available to detect defects of solar panels. For example, EL inspection is used during PV manufacturing for quality control.

For EL measurements, PV modules of the solar panels are connected to a power supply and put under forward bias. The emitted near-infrared light is captured with a camera that is sensitive in the near-infrared waveband. For on-site inspection, EL imaging has also been used on a sampling basis. One of the common methods for on-site EL inspection is using a mobile trailer. In this method, the mobile trailer which carries a darkroom is deployed on-site. PV modules are taken down from their installed position for measurement in the darkroom inside the trailer. This method ensures that the EL measurements of PV modules are taken in a controlled environment. However, as the PV modules must be dismounted, large scale inspection using this method is time consuming and not feasible. Additionally, there is the risk of introducing defects during module handling.

Another method of EL inspection is performed at night using a camera mounted on a tripod, respective during the day, with lock-in current control. While this method does not require dismounting of PV modules from their support frame, it is also time consuming and highly labour intensive. Additionally, perspective and intensity distortions of captured images may result from the limitations of capturing images from a camera mounted to a tripod.

<CIT> discloses a method for detecting 'black corner' defect of a battery solar sheet. The method proposed: S1) alignment: moving a cell to an image center; S2) rejecting other interference; S3) performing normal projection; S4) performing extraction of a characteristic curve; and S5) coinciding the center of the cell with the image center, and analysing the characteristics to determine whether a black corner exists. However, application of such a method is limited to detecting black corners, and may not be suitable for large scale solar farms.

<CIT> discloses a method for detecting a fault in a solar panel in a solar farm by processing solar panel images captured by an unmanned aerial vehicle. However, such a method may not be able to detect faults accurately.

<CIT> discloses a method for determining the quality of an aerial video of an unmanned aerial vehicle. The flight control system of the unmanned aerial vehicle can adjust the flight posture in real time according to the video quality and thus, best aerial photographing effect is achieved. However, such a method may not be able to detect defects in a solar panel.

<CIT> discloses a method of generating a high-resolution image from a set of source low-resolution images and the method includes estimating a high-resolution image based on the set of source low-resolution images; transforming the estimated high-resolution image into a set of estimated low-resolution images; comparing the set of source low-resolution images with the set of estimated low-resolution images to generate a set of low-resolution errors; transforming the set of low-resolution errors into a set of high-resolution errors, generating a high-resolution error image based on the set of high-resolution errors; combining the high-resolution error image with the estimated high resolution image to yield an updated estimated high-resolution; and repeating the above steps until the updated estimated high-resolution image is of a desired quality. However, such a method may not be able to detect defects in solar panel accurately.

<CIT> discloses a photovoltaic devices inspection apparatus and a method of determining defects in photovoltaic devices using electroluminescence of the photovoltaic devices. The proposed apparatus and method can determine whether the photovoltaic devices are defective or non-defective at the moment and whether the devices have a possibility to become defective in the future. However, such inspection apparatus and method may not be able to detect defects accurately.

<CIT> discloses methods, systems and apparatus, including computer programs encoded on computer storage media for an unmanned aerial vehicle aerial survey, that includes determining a boundary for an area to be inspected by the unmanned aerial vehicle, according to constraints associated with the UAV. However, the disclosed methods, systems and apparatus may not be able to detect defects of a solar panel accurately.

Therefore, it is desirable to provide a solution that addresses at least one of the problems mentioned in existing prior art, and/or to provide the public with a useful alternative.

According to a first aspect, there is provided a method of processing electroluminescence (EL) images of a PV array according to claim <NUM>.

According to a second aspect, there is provided an image processing device for processing EL images of a PV array according to claim <NUM>.

According to a third aspect, there is provided a method of obtaining an enhanced image of a PV array subsection of a PV array from EL images of the PV array subsection captured by an aerial vehicle having a camera according to claim <NUM>.

Exemplary embodiments will be described with reference to the accompanying drawings in which:.

The following description includes specific examples for illustrative purposes. The person skilled in the art would appreciate that variations and alterations to the specific examples are possible and within the scope of the present disclosure. The figures and the following description of the particular embodiments should not take away from the generality of the preceding summary.

<FIG> illustrates an exemplary EL inspection apparatus or setup <NUM> for capturing EL images of a PV array <NUM> installed on a roof of a building. In this embodiment, the PV array <NUM> includes three PV strings <NUM>. Each PV string <NUM> includes two rows of five PV modules <NUM>. The PV strings <NUM> are arranged in each row along a longitudinal axis of the PV strings <NUM> so that the PV array <NUM> has an array axis 10a that runs along the longitudinal axis of the PV strings <NUM>. The PV strings <NUM> are connected to a combiner box <NUM> which combines the PV strings' electrical output. The combiner box <NUM> is connected to an inverter box (not shown) which is then connected to the power grid. The inverter box converts the combined electrical output from DC to AC before feeding the combined electrical output into the power grid. In this way, electricity generated by the PV modules <NUM> is fed into the power grid. During EL inspection, the PV array <NUM> is disconnected from the power grid.

The setup <NUM> further includes a switcher box <NUM> that includes three channels <NUM>. Each PV string <NUM> of the PV array <NUM> is connected to a respective channel <NUM> of the switcher box <NUM>. The setup <NUM> further includes a power supply <NUM> connected to the switcher box <NUM>. The power supply is configured to supply each PV string <NUM> with up to <NUM> volts of electricity and a minimum current equal to <NUM>% of the short circuit current of the PV modules <NUM>. By selectively activating the channels <NUM>, an on-site worker <NUM> selectively supplies the PV strings <NUM> with an electrical current from the power source <NUM> which puts the PV strings <NUM> under forward bias conditions. When put in the forward bias condition, one or more PV modules <NUM> in the PV string <NUM> emit light, otherwise known as electroluminescence (EL), and thus produce an EL signal that is detected by an optical sub-system of an aerial vehicle (e.g. an unmanned aerial vehicle (UAV) <NUM>).

In <FIG>, the worker <NUM> notices that the PV array <NUM> operating normally is generating less electricity than expected. Neither visual, nor infrared inspection indicated a reason for this. After disconnecting the PV array <NUM> from the power grid, and electrically connecting the PV array <NUM> to the power supply <NUM> via the switcher box <NUM>, the worker <NUM> instructs an assistant <NUM> to deploy the UAV <NUM> to capture EL images of the PV string <NUM> for EL inspection. The UAV <NUM> includes a main body <NUM>, a propulsion device <NUM> attached to the main body <NUM> to allow the UAV <NUM> to take flight, and the optical sub-system <NUM> mounted to the main body <NUM> for capturing the EL images.

While the assistant <NUM> is provided in this embodiment, it should be clear that the worker <NUM> may deploy the UAV <NUM> without help from the assistant <NUM>. Additionally, it should also be noted that multiple PV strings <NUM> may be connected to one channel <NUM>. For example, all three PV strings <NUM> of the PV array <NUM> may be connected to a single channel <NUM>. In this scenario, all three PV strings <NUM> are simultaneously put under forward bias conditions, and the EL images of the entire PV array <NUM> are captured. Notably, the amount of current supplied by the power supply <NUM> is lower in this scenario compared to when each channel <NUM> is connected to respective PV strings <NUM> although this does not affect the PV strings <NUM> being put under forward bias conditions.

Furthermore, a larger PV array may include multiple combiner boxes <NUM> which are then connected to the inverter box (not shown). Alternatively, the PV array <NUM> may not include the combiner box <NUM>, and instead, the PV strings <NUM> are directly connected to the inverter box.

Preferably, each PV string <NUM> is supplied with <NUM>% of the short circuit current of the PV modules <NUM>. However, this is not necessary. For example, each PV string <NUM> may be supplied with a current equal to <NUM>% of the short circuit current of the PV modules <NUM>. A measurement of the same PV array sub section at multiple injection currents may be used to estimate electrical properties of the PV modules <NUM> and to identify current-dependent defects.

<FIG> illustrates a system architecture of a system <NUM> of capturing and processing images. The system <NUM> includes the unmanned aerial vehicle (UAV) <NUM> and an image processing device <NUM>. In addition to the optical sub-system <NUM>, and the propulsion device <NUM>, the UAV <NUM> further includes an onboard processing sub-system <NUM> and a power source <NUM> (e.g. batteries). The power source <NUM> is connected to, and powers, the optical sub-system <NUM>, the propulsion device <NUM>, and the onboard processing sub-system <NUM>. The onboard processing sub-system <NUM> is communicatively coupled to the optical sub-system <NUM> and the propulsion device <NUM>, and is configured to control the optical sub-system <NUM> and the propulsion device <NUM> to perform various functions.

The optical sub-system <NUM> is described first with reference to <FIG>. The optical sub-system <NUM> includes a camera <NUM> with an optical axis 222a and in this embodiment, the camera <NUM> is a video camera operable to take monochromatic video recordings. The camera <NUM> is sensitive in the near- and/or short-infrared (NIR, SWIR) EL waveband, and is suited for capturing EL images in such wavebands. The camera <NUM> includes a focusing lens <NUM> which is also suitable for use in the NIR/SWIR EL waveband. The lens <NUM> (e.g. motorized focus lens, voltage-controlled polymer lens or liquid lens) allows the onboard processing sub-system <NUM> to adjust the focus of the lens <NUM> depending on the distance of the lens <NUM> to the PV array <NUM>. The camera <NUM> further includes a lens filter (not shown) for filtering out any unwanted spectrum of light.

The optical sub-system <NUM> further includes an optical distance measurement device (such as a Light Detection And Ranging device (LIDAR) <NUM>). The LIDAR's optical axis (224a) is aligned to the optical axis 222a of the camera <NUM>. The LIDAR <NUM> is operable to measure distance of the optical sub-system <NUM> from the PV array <NUM>.

The optical sub-system <NUM> further includes a focused light source (such as a laser <NUM>). The laser's optical axis (226a) is also aligned to the optical axis 222a of the camera <NUM>. The laser <NUM> is arranged to emit light in the visible spectrum, and has a beam divergence that is not larger than the camera's field-of-view (FOV) which minimizes optical interference from the laser. Furthermore, the laser <NUM> allows for low power operation, emits light in a narrow waveband, and creates focused shapes which are easily identified by the worker <NUM>. The focussed shapes are non-symmetrical which beneficially allows the worker <NUM> to identify where the camera <NUM> is pointing at, and also identify a rotation of the camera's FOV.

The optical sub-system <NUM> further includes a single-axis gimbal <NUM> (shown in <FIG>) which attaches the optical sub-system <NUM> to the main body <NUM> of the UAV <NUM>. The onboard processing sub-system <NUM> controls the gimbal to raise/lower the optical axis 222a of the camera <NUM> with one degree of freedom (i.e. pitch).

Alternatively, the optical sub-system <NUM> may be mounted to the main body <NUM> via a two-axis or a three-axis gimbal to allow for further degrees of freedom (yaw, roll) for adjusting the optical axis 222a of the camera <NUM> and provide enhanced stability of the FOV. Furthermore, the focused shapes created by the laser <NUM> may be symmetrical. An LED may also be used in place of the laser <NUM>. The focus of the lens <NUM> may be adjustable, either mechanically or electrically driven.

Referring to <FIG>, the propulsion device <NUM> is described next. The propulsion device <NUM> includes four sets of propellers <NUM> driven by respective motors <NUM> to allow the UAV to take flight and perform aerial maneuvers such as rotating about the aerial vehicle's yaw axis 210a (see <FIG>). The yaw axis 210a is a vertical axis that runs through a middle portion of the main body <NUM> when the UAV <NUM> is upright.

The onboard processing sub-system <NUM> includes a controller <NUM> and a memory unit <NUM>. The controller is configured to execute five functions (FOCUS, POINT, FIND, ALIGN, SCAN, AUTO) according to a set of instructions stored in the memory unit <NUM>. The controller <NUM> receives information from the optical sub-system <NUM> including the distance from the PV array <NUM> to the LIDAR <NUM>, as well as the camera's visual feed. Using the information received from the optical sub-system <NUM>, the controller <NUM> is configured to operate the optical sub-system <NUM> and the propulsion device <NUM> to execute the functions POINT, FIND, FOCUS, ALIGN, SCAN and AUTO algorithms. Once the EL images are captured, the UAV <NUM> returns to its base to transfer the EL images to the image processing device <NUM> for further processing.

The image processing device <NUM> is configured to execute the functions FREEZE and MAP. The image processing device <NUM> includes a frame extraction module <NUM>, an image enhancement module <NUM>, a mapping module <NUM>, and an image processor <NUM>. The image processing device <NUM> takes the EL images as input, and outputs an enhanced EL image of the PV array <NUM>.

The operation of each component of the aerial vehicle is described in more detail in the following section.

<FIG> is a block diagram for an exemplary method <NUM> of capturing and processing the EL images by the system <NUM>. The exemplary method <NUM> is described alongside corresponding Figures <NUM> to 26B, where applicable. In this embodiment, the UAV <NUM> is deployed to perform EL inspection of a PV array <NUM>, preferably performed at night or under low natural light conditions. The PV array <NUM> is similar to the PV array <NUM>, except the PV array <NUM> includes more PV modules. The combiner boxes (not shown) of the respective sets from the PV array <NUM> are connected to a switcher box <NUM> which is controlled by the onsite worker <NUM>.

At step <NUM> of the method <NUM>, the controller <NUM> executes the POINT function. <FIG> is a schematic diagram <NUM> of the UAV <NUM> performing the POINT function. Upon deployment of the UAV <NUM>, the controller <NUM> is configured to control the power source <NUM> to supply power to the laser <NUM>. The worker <NUM> spots the area <NUM> illuminated by the laser <NUM> and identifies where the camera <NUM> is pointing at. The laser has a light intensity that is within a safe range (laser: Class <NUM> or <NUM>) so that the onsite worker <NUM> will not sustain any eye damage even in the event of unintentional direct eye exposure to the laser <NUM>. The laser <NUM> is switched on throughout most of the operation of the UAV <NUM>. This allows the worker <NUM> to identify quickly where the camera <NUM> is pointing at, especially when it is not obvious which PV string is currently under forward bias. The laser <NUM> is turned off right before the UAV <NUM> executes the SCAN function so that the laser <NUM> does not appear in the EL images captured by the camera <NUM>.

The worker <NUM> consults a string connection schematic which informs the worker <NUM> which PV string is put under forward bias according to the channel that is activated/open. In this embodiment, the string connection schematic contains an error and the worker <NUM> is informed that for a particular channel, a PV string 512a is put under forward bias. In actuality, another PV string 512b is put under forward bias, and one or more PV modules 514b of the PV string 512b emits an EL signal. The PV strings 512a,512b are part of the PV array <NUM>, and is also referred to as a PV array subsection 512a, 512b of the PV array <NUM>.

After activating the particular channel, the worker <NUM> manually guides the UAV <NUM> to the PV string 512a along a flight path <NUM>. The worker <NUM> notices that no EL signal is being emitted by the PV string 512a and deduces that there is an error in the string connection schematic. In order to determine the location of the PV string 512b that is under forward bias i.e. emitting an EL signal, the worker <NUM> directs the controller <NUM> to initiate the FIND function.

It should be noted that it is not necessary for the worker <NUM> to manually guide the UAV <NUM> to the PV string 512a. The worker <NUM> may initiate the FIND function immediately after deployment of the UAV <NUM> thus obviating the POINT function. Alternatively, the controller <NUM> may also be configured to initiate the FIND function automatically upon deployment of the UAV <NUM>.

At step <NUM> of the method <NUM>, the controller <NUM> executes the FIND function. <FIG> is a schematic diagram <NUM> of the UAV <NUM> performing a first part of the FIND function. Notably, the worker <NUM> and the illuminated area <NUM> are not illustrated in Figure 6a (and subsequent figures). The first part of the FIND function involves setting the UAV <NUM> to an initial position. Upon initiation, the controller <NUM> is configured to dynamically adjust the propulsion device <NUM> to maneuver the UAV <NUM> to the initial position in which the UAV's yaw axis 210a is perpendicular to the ground. The controller <NUM> is further configured to adjust the gimbal <NUM> dynamically such that the camera's optical axis 222a is also perpendicular to the ground, or in other words, the camera's field-of-view shows the area directly below the UAV <NUM>. In this position, the optical axis 222a has an angle of <NUM>°.

In addition, the controller <NUM> is further configured to adjust dynamically the propulsion device <NUM> to maneuver the UAV <NUM> (along the UAV's yaw axis 210a) to a predefined elevation <NUM> from the ground.

<FIG> is a schematic diagram <NUM> of the UAV <NUM> performing a second part of the FIND function. The second part of the FIND function involves performing a sweep of the PV array <NUM> in a sweeping path that starts from the area directly below the UAV <NUM> and spirals outwards. To perform the sweep, the controller <NUM> is configured to adjust dynamically the propulsion device <NUM> to rotate (see arrow <NUM>) the UAV <NUM> about the UAV's yaw axis 210a. The controller <NUM> is further configured to simultaneously increase <NUM> the camera's optical axis angle. This moves the camera's FOV outwards from the UAV <NUM>. In combination with the rotation <NUM>, the camera's scanning path forms a spiral <NUM>. This is illustrated in <FIG> which illustrates a schematic diagram <NUM> depicting the results of the second part of the FIND function.

To give an example, in the initial position, the UAV hovers at a height of <NUM> above the ground. If the camera's optical axis angle is moved from <NUM>° to <NUM>°, a radial area of <NUM> meters is observed (using the law of sines: <MAT>). The camera <NUM> has an angle-of-view of <NUM>°. This results in a field of view of <NUM> for a view pointing directly towards the ground ( <MAT>). Thus, three rotations are sufficient to cover the PV array <NUM> which has a <NUM> radius.

Notably, the camera's optical axis angle is increased at a decreasing pitch speed. From a perspective of the gimbal <NUM>, the gimbal's pitch speed is decreased with increasing pitch angle. Since the scanning path <NUM> increases with 2π multiplied by radius, the camera's FOV travels along a five times larger distance (2π · <NUM> ≈ <NUM>; 2π · <NUM> ≈ <NUM>) in its last rotation. In consequence, the camera's rotation <NUM> or yaw speed is adjusted to be five times lower at the last rotation.

The camera's yaw speed depends on the amount of motion blur that is acceptable in a frame during an exposure time. For a maximum deflection during exposure of <NUM> pixels, an exposure time of <NUM> and a horizontal sensor resolution of 640px, a yaw speed of <NUM>/s is possible ( <MAT>). With an approximated travelled distance for the whole spiral of <NUM> (sum of three circles at <NUM>, <NUM>, <NUM> radius) the method FIND may take at maximum <NUM> seconds if no PV string under forward bias is detected. While the function FIND is in progress, the controller <NUM> checks the images captured by the camera <NUM> for features of the forward biased PV string 512b. The function FIND stops when an EL signal is detected from PV string 512b. Upon EL detection, the controller <NUM> is configured to adjust dynamically the propulsion device <NUM> to maneuver the UAV <NUM> to the EL signal. In this way, the EL signal is being used as an optical marker to guide the UAV <NUM>.

At step <NUM> of the method <NUM>, the controller <NUM> executes the FOCUS function. The controller <NUM> receives information regarding the distance of the camera <NUM> to the one or more PV modules in the PV string 512b from the LIDAR <NUM>. The controller <NUM> is configured to adjust dynamically the camera's focus to match the distance between the camera lens <NUM> and a focal point to the distance between the camera lens <NUM> and imaged object according to the measured distance to maintain the camera lens' focus.

At step <NUM> of the method <NUM>, the controller <NUM> executes the ALIGN function which is described next in relation to <FIG> are perspective views <NUM>,<NUM> of the UAV <NUM> hovering over the PV string 512b with the camera's FOV misaligned and aligned to the PV string 512b respectively. <FIG> are EL images <NUM>, <NUM> from the perspective of the camera <NUM> with the camera's FOV misaligned and aligned respectively. <FIG> are schematic diagrams <NUM>,<NUM> of the EL images <NUM>,<NUM> from the perspective of the controller <NUM>.

Referring to <FIG>, the camera's FOV <NUM> is misaligned relative to the PV string 512b. The camera's FOV <NUM> has to be aligned to the PV string 512b (as depicted in <FIG>), before the method <NUM> can proceed to the SCAN function.

The controller <NUM> receives an EL image <NUM> from the camera <NUM> (as depicted in <FIG>). The EL image <NUM> includes the PV string 512b (or a portion of the PV string 512b) which appears bright (higher light intensity) due to the EL signal emitted by the one or more PV modules 514b, compared to the background <NUM> i.e. the ground. The controller <NUM> applies an algorithm to determine that the camera's FOV <NUM> is misaligned relative to the PV string 512b. The algorithm utilizes an intensity difference between the bright PV string 512b and the dark background <NUM> to detect a position and orientation of the PV string 512b (or of a reference PV module 514b). Specifically, and with reference to <FIG>, the algorithm detects the PV string's edges <NUM>, and derive key points <NUM> (e.g. module corner points) from the edges <NUM>. The algorithm then determines a set of aligned points <NUM> corresponding to each key point <NUM> which minimizes the misalignment and any angular or perspective distortions. The aligned points <NUM> are set on upper and lower horizontal indicators <NUM>.

Further, the algorithm also determines an appropriate elevation of the UAV <NUM> relative to the PV string 512b which puts the PV string 512b at a predefined size ratio within the camera's FOV <NUM>. The predefined size ratio is set to keep a space of about <NUM> - <NUM>% between the top and bottom of the PV string 512b and image border <NUM> to allow a tolerance to positional oscillations of the UAV <NUM>. In other words, the PV string 512b occupies <NUM>% to <NUM>%of the camera's FOV at the predefined size ratio.

The algorithm then determines a perspective transformation to align the key points <NUM> to the aligned points <NUM> (as depicted in <FIG>). The controller <NUM> is then configured to make appropriate adjustments to the gimbal <NUM> and the propulsion device <NUM> based on the perspective transformation. As can be seen in <FIG>, the camera's FOV <NUM> is aligned to the PV string 512b, and the PV string 512b is at the predefined size ratio within the camera's FOV <NUM>. Once aligned, the camera's optical axis is perpendicular to the PV string's planar surface. Since the PV string includes one or more PV modules 514b, the PV string's planar surface is made up of the one or more PV modules' planar surface. The one or more PV modules' planar surface is defined as the surface that is arranged to receive the sunlight.

Notably, the controller <NUM> is configured to execute the ALIGN function repeated while the SCAN function is in progress. This ensures that the camera's optical axis is perpendicular to the PV string's planar surface while the EL images are being captured during the SCAN function. Advantageously, this minimizes perspective distortion and increases the image resolution of EL images captured by the camera <NUM>. Further, this allows the camera <NUM> to capture EL images with a more consistent focus across the EL image. In addition, the EL intensity from each PV module 514b is captured accurately which is important for analysis purposes.

Notably, if the controller <NUM> does not detect an end <NUM> of the PV string 512b in the EL image <NUM>, the controller <NUM> is configured to adjust the propulsion device <NUM> to manuever the UAV <NUM> along the PV string's longitudinal axis 10a (refer to <FIG>) until the end <NUM> of the PV string 512b is in the EL image <NUM>.

At step <NUM>, the controller <NUM> executes the SCAN function which is described next alongside <FIG> includes <FIG> which respectively illustrate a series <NUM> of six consecutive EL frames of the PV string 512b captured by the camera <NUM> at different positions along the PV string 512b. Notably, the EL frames overlap so that a PV module <NUM> is likely to appear more than once, i.e. in <FIG>.

When considering large PV installations and a limited flight time of the UAV <NUM>, scanning speed becomes a crucial parameter in determining system efficiency. Long camera exposure times typically result in better image quality, i.e. better signal-to-noise ratio (SNR). However, a long camera exposure time coupled with a fast scanning speed causes motion blur which reduces the image quality. On the other hand, a short camera exposure time results in EL images with too much noise, especially when the injected current is low, which also reduces image quality.

Since the PV module <NUM> appears in <FIG>, there are five frames of the PV module <NUM> (which will be extracted at a later stage) available for image averaging (again at a later stage). The SNR of an image average <NUM> increases roughly with the square root of the number of frames available for image averaging (nframes). In other words, image noise of the image average <NUM> reduces with the number of frames used to create the image average. The number of frames available for image averaging is calculated in real-time by the controller <NUM> since it also dependent on the scanning speed.

Furthermore, even with the ALIGN function being executed repeatedly during the SCAN function, it is difficult for the camera's FOV to remain completely stable throughout the SCAN function. This is especially so considering the positional oscillations of the UAV <NUM> due to external forces (such as wind) acting on the UAV <NUM>. This is evident in <FIG> which is a schematic diagram of the series <NUM> after image alignment of the EL images in <FIG> to the PV string 512b is performed. The positional oscillation of the UAV <NUM> is evident in a point-to-point deflection between EL images along the PV string 512b. While the positional oscillations are mitigated (and mostly corrected) by the ALIGN function, any computation of the scanning speed has to take into consideration this deflection, along with limiting noise and motion blur.

The controller <NUM> is configured to perform optical flow analysis (e.g. Lucas-Kanade method) during the SCAN function. For each frame in <FIG> that is captured by the camera <NUM>, the controller <NUM> calculates key points in a current frame, and compares the key points in the current frame with the key points in a preceding frame to determine a length of a deflection vector.

<FIG> is a schematic diagram <NUM> of two consecutive EL images (i.e. <FIG>) of the PV string 512b showing point-to-point deflection. The preceding EL image of <FIG> is shown in dotted lines while the current EL image F is shown in bold lines. The deflection of an object <NUM> in an image centre <NUM> is calculated from an average deflection of detected key points in the EL images of <FIG>. The length of this deflection vector is referred to as df2f.

The controller <NUM> calculates a line <NUM> through the image centre <NUM> and at deflection angle. The line <NUM> intersects the image border <NUM> at intersection points <NUM>,<NUM>. The distance between the intersection points <NUM>,<NUM> represents an object distance travelled through the image plane. The controller <NUM> then calculates nframes by taking the ratio of the length of the deflection vector df2f to the distance between the intersection points <NUM>,<NUM>.

The impact of noise on the image quality can be quantified with the SNR: <MAT>.

In this embodiment, the SNR is calculated in the following manner. The captured Otsu's method is used to obtain a threshold (tOtsu) between the dark background <NUM> and the PV string 512b (or a portion of the PV string 512b) which appears brighter due to the EL signal emitted by the one or more PV modules 514b. The 'Signal' value is obtained by averaging the intensity of all pixels brighter than the threshold, tOtsu. The 'Noise' value is obtained before EL measurement from an average of the standard deviation of a pixel of multiple images taken with similar or comparable imaging parameters (e.g. exposure time, sensor temperature and gain) in series.

An SNR-dependent scanning speed factor (or simply SNR scanning factor), fSNR is applied on the current scanning speed to ensure that the SNR of the image average <NUM>, SNRframe matches a target SNR, SNRtarget using Equation (<NUM>) <MAT>.

For example, SNRtarget is set at <NUM> for lab measurements. The camera exposure time is adjusted during the SCAN function to keep the SNRframe at <NUM> (minimum requirement for outdoor measurements). The controller <NUM> then estimates that twenty-five EL images are available for image averaging (nframe = <NUM>). Based on Equation (<NUM>), <MAT>. In other words, the current scanning speed should be reduced to <NUM>% of its current value. In essence, lowering the scanning speed increases the number of frames (nframes) available for creating the image average <NUM>.

To avoid effects of motion blur, object deflection during exposure of a frame (dexp) should also be below a pre-determined maximum value (dexp_max). A value of <NUM> pixel per exposure time is suggested. The frame to frame deflection (df<NUM>f) can be scaled into exposure time deflection (dexp) using the time difference between two frames (tf<NUM>f) and exposure time (texp) according to Equation (<NUM>).

A motion blur dependent scanning factor (fblur) is equal to a ratio of the maximum object deflection dexp_max to the current object deflection dexp as shown in Equation (<NUM>).

A scanning speed factor (fscan) is obtained from a minimum of both factors (fSNR, fblur) as shown in Equation (<NUM>): <MAT>.

To ensure high EL image quality, a maximum set scanning speed, vquality is obtained using Equation (<NUM>): <MAT>.

The maximum set scanning speed, vquality defines the maximum scanning speed at which a high EL image quality can still be achieved.

According to Equation (<NUM>), a target scanning speed is calculated by multiplying the scanning speed factor, fscan with the current flight speed, vcur. If the target scanning speed is below a maximum flight speed, vmax of the UAV <NUM>, then the target scanning speed is selected as the maximum set scanning speed, vquality. In other words, even though the UAV <NUM> is able to move faster up to its maximum flight speed, vmax, since this reduces the image quality of the EL images, the maximum set scanning speed, vquality is set below the maximum flight speed vmax,.

If the maximum set scanning speed exceeds the maximum flight speed, vmax of the UAV <NUM>, then the maximum flight speed, vmax is selected as the maximum set scanning speed, vquality.

The target flight speed, vtarget is obtained from the maximum set scanning speed, vquality, and a user input factor, fuser according to Equation (<NUM>).

The user input factor, fuser is obtained from a deflection of a joystick controlled by the worker <NUM> remotely, and ranges from <NUM>% to <NUM>%. At <NUM>%, the target flight speed, vtarget is simply the maximum set scanning speed, vquality.

A smoothing technique is applied to the target flight speed, vtarget to minimise jerky movement of the UAV <NUM>. In this embodiment, exponential moving average is used to obtain a set speed, vset according to Equation (<NUM>). α is a smoothness factor within a range of <NUM> to <NUM>%.

Two exemplary embodiments of the SCAN function are described next with reference to <FIG> which are line graphs 1800a,1800b showing the current flight speed, vcur of the UAV <NUM> decreasing and increasing respectively over time in accordance with the SCAN function. For both embodiments, the user input factor, fuser is taken to be <NUM>%, and the maximum flight speed, vmax of the UAV <NUM> is taken to be <NUM>/s.

Referring to <FIG>, at time = <NUM>, and with the UAV <NUM> moving at a current flight speed, vcur of <NUM>/s, the controller <NUM> obtains a scanning speed factor, fscan1 of <NUM>% from Equation (<NUM>). If the scanning speed factor is below <NUM>%, this indicates that the UAV <NUM> is moving faster than the UAV <NUM> should. The controller <NUM> then determines the target scanning speed to be <NUM>/s. Since the target scanning speed is below the maximum flight speed, vmax of the UAV <NUM>, the target scanning speed is selected as the maximum set scanning speed, vquality according to Equation (<NUM>).

Notably, since the user input factor, fuser is <NUM>%, the maximum set scanning speed, vquality is also the target flight speed, vtarget according to Equation (<NUM>).

The controller <NUM> then dynamically decreases the current flight speed of the aerial vehicle until the target flight speed, vtarget is achieved. The smoothing technique according to Equation (<NUM>) is applied to minimise the jerky movement of the UAV <NUM>, and this can be seen in the smooth transition of the current flight speed, vcur of the UAV <NUM> from <NUM>/s (at time = <NUM>) to <NUM>/s (at time = <NUM>).

At time = <NUM>, the controller <NUM> obtains a scanning speed factor, fscan2 of <NUM>% from Equation (<NUM>). At this point, the current flight speed, vcur of the UAV <NUM> matches the maximum set scanning speed, vquality.

Referring to <FIG>, at time = <NUM>, and with the UAV <NUM> moving at a current flight speed, vcur of <NUM>/s, the controller <NUM> obtains a scanning speed factor, fscan1 of <NUM>% from Equation (<NUM>). If the scanning speed factor is above <NUM>%, this indicates that the UAV <NUM> can move <NUM>% faster while still matching the image quality that is required. The controller <NUM> then determines the target scanning speed to be <NUM>/s.

Since the target scanning speed is below the maximum flight speed, vmax of the UAV <NUM>, instead of selecting the maximum flight speed, vmax as the maximum set scanning speed, vquality, the target scanning speed is selected as the maximum set scanning speed, vquality according to Equation (<NUM>).

Similarly, since the user input factor, fuser is <NUM>%, the maximum set scanning speed, vquality is also the target flight speed, vtarget according to Equation (<NUM>). The smoothing technique according to Equation (<NUM>) is also applied to minimise the jerky movement of the UAV <NUM>.

The controller <NUM> then dynamically increases the current flight speed, vcur of the aerial vehicle until the target flight speed, vtarget is achieved. At time = <NUM>, the controller <NUM> obtains a scanning speed factor, fscan2 of <NUM>% from Equation (<NUM>). At this point, the current flight speed, vcur of the UAV <NUM> matches the maximum set scanning speed, vquality.

Notably, the controller <NUM> continuously performs the SCAN function until an opposing end of the PV string 512b is detected. Once the opposing end of the PV string 512b is detected, the controller <NUM> terminates the SCAN function and the EL images are stored in the memory unit <NUM>.

At step <NUM>, the controller <NUM> is configured to execute the AUTO function. <FIG>, which includes <FIG>, is a schematic diagram showing a time lapse of the UAV <NUM> capturing EL video images of the PV array <NUM> (using the PV array <NUM> of <FIG> as an example). The PV array <NUM> is illustrated to include two rows <NUM>,<NUM> of PV strings. The controller <NUM> is communicatively coupled to and is able to control the power supply <NUM> and the switcher box <NUM> (via a wireless connection) which in turn is electrically connected to the PV array <NUM>.

At t1, as illustrated in <FIG>, the UAV <NUM> starts at an end 1810a of the first row <NUM> and captures the EL images of the first PV string 1812a in a scanning direction <NUM>. Upon detecting an end 1814a of the PV string 1812a, the controller <NUM> is configured to instruct the switcher box <NUM> to close the current channel, and open the next channel for the next PV string, 1812b. Notably, the current injected into the PV string 1812b is maintained at a same level as the PV string 1812a. The process continues until the controller <NUM> detects that it has reached the last PV string 1812f at an opposing end 1810b of the first row <NUM> of PV strings at t2 as shown in <FIG>.

At t3, as illustrated in <FIG>, the controller <NUM> is configured to instruct the power supply <NUM> to lower the current injected into the PV string 1812f. The purpose of lowering the injection current is to capture low-current EL images for comparison with the higher current EL images. The controller <NUM> then dynamically adjusts the propulsion device <NUM> to move the UAV <NUM> in a scanning direction <NUM>, which is opposite to the scanning direction <NUM>. The UAV <NUM> moves along the scanning direction <NUM> and captures the EL images of the PV strings in the first row <NUM> at a lower injection current.

<FIG> illustrates that at t4, the controller <NUM> detects that the UAV <NUM> has reached the end 1810a of the first row <NUM> of PV strings. At this point, the controller <NUM> is configured to instruct the switcher box <NUM> to close the current channel and open the next channel to put the first PV string 1820a of the second row <NUM> under forward bias. The controller <NUM> is further configured to execute the FIND function to locate the EL signal emitted by the PV string 1820a. Notably, the PV string 1820a is within the camera's FOV during the FIND function, and the controller <NUM> is able to locate the PV string 1820a.

At t5 in <FIG>, the controller <NUM> is configured to navigate the UAV <NUM> to the PV string 1820a. Once the UAV <NUM> has reached the PV string 1820a, the controller <NUM> is configured to execute the SCAN function once again. The EL images of the PV strings in the second row <NUM> are captured using a similar process used to capture the EL images of the PV strings in the first row <NUM> (as detailed in t1 to t4). Notably, the controller <NUM> is configured to execute the ALIGN function throughout the duration of the SCAN function. The captured EL images are stored in the memory unit <NUM>.

<FIG> is a schematic diagram <NUM> of a file structure for the stored EL images. The file structure includes the stored EL images <NUM>, and an appended block including additional meta data <NUM>. The meta data <NUM> is separated into a header <NUM> and a body <NUM>. The header <NUM> includes information on the image correction methods applied on the EL images <NUM> before the EL images <NUM> are saved. The image correction methods include dark current subtraction, flat filed correction, bad pixel substitution, and lens distortion removal. The body <NUM> stores image-dependent data which include camera exposure time and gain, UAV geo-location, camera orientation (yaw, pitch, roll), injection current, voltage, and channel information.

The camera <NUM> captures/digitizes the EL images <NUM> at a bit depth larger than <NUM>-bit (e.g. <NUM>- or <NUM>-bit). This allows resolving an image intensity range more precisely than within the <NUM> brightness steps of a monochromatic <NUM>-bit sensor. To reduce the file size, an image encoder based on <NUM>-bit images is used. An upper and lower intensity range of each EL image <NUM> is stored in the meta data <NUM>. The upper and lower intensity range is obtained from the effective dynamic range of each EL image <NUM> captured by camera <NUM>. The range can be used to scale every <NUM>-bit EL image to respective lower and upper intensity range of the original higher depth camera image.

Once the UAV <NUM> returns to its base, the stored EL images are then transferred to the image processing device <NUM> for further processing.

At step <NUM>, the image processing device <NUM> executes the FREEZE function which is described next with reference to <FIG>. For the sake of brevity, the FREEZE function is described with reference to processing the EL images that include the PV string 512b only. It should be understood that the FREEZE function may process every EL image in a similar manner.

The FREEZE function includes (i) a frame extraction step performed by the frame extraction module <NUM>; and (ii) an image enhancement step performed by the image enhancement module <NUM>.

<FIG> includes <FIG> which respectively illustrates three consecutive EL frame images 2000a, 2000b,2000c of the PV string 512b being processed as part of the frame extraction step. The image processor <NUM> instructs the frame extraction module <NUM> to determine respective corner points <NUM> of each PV module 514b in the PV string 512b from all three EL frame images 2000a, 2000b,2000c. The detected corner points of each PV module 514b are shown as black dots <NUM> in each EL frame image 2000a, 2000b,2000c. Notably, in this embodiment, the frame extraction module <NUM> fails to detect a particular corner point <NUM> of a particular PV module <NUM> in the first EL frame image 2000a in <FIG>.

All corner points <NUM> detected in the first EL frame image 2000a of <FIG> are visualized as empty dots <NUM> in the second EL frame image 2000b of <FIG>. Notably the empty dots <NUM> are shifted slightly to the left compared to their corresponding black dots <NUM> in the first EL frame image 2000a of <FIG>. This is due to the correction of point-to-point deflection. Once a local corner point density exceeds a certain threshold (two detected corner points <NUM> is sufficient in this embodiment), the image processor <NUM> controls the frame extraction module <NUM> to generate a cluster point <NUM>. The cluster point's position is obtained by taking an average of all the corner points <NUM> used to generate the cluster point <NUM>. This beneficially reduces the spatial detection error of individual corner points.

Referring to <FIG>, a cluster point <NUM> is stored once the cluster point <NUM> moves outside the EL frame image's border, as illustrated by the cluster point <NUM> in the EL image 2000c. Cluster points <NUM> inside the EL frame image's border are discarded once too many EL frame images add no more corner points <NUM> to the cluster point. Cluster points <NUM> inside the EL frame image's border, such as the cluster point <NUM> in the EL image 2000c, are kept as long as a ratio of the EL frame images adding new corner points <NUM> to the EL frame images adding no corner points <NUM> is above a certain threshold. All cluster points <NUM> are then meshed by the frame extraction module <NUM> to generate/construct rectangular-like quadrilaterals or frames. Each frame is constructed from the cluster points <NUM> of the respective PV modules that is contained in each frame.

<FIG> illustrates the frames <NUM> that are extracted from the frame extraction step being processed in the image enhancement step. The image processor <NUM> instructs the image enhancement module <NUM> to assign a horizontal and vertical module index <NUM> to each frame <NUM> according to its position in the PV string 512b. For example, the first frame which is associated with a particular PV module <NUM> is located in the first row, and first column of the PV string 512b, and is assigned the horizontal and vertical module index [<NUM>,<NUM>].

The image processor <NUM> further controls the image enhancement module <NUM> to group the frames <NUM> according to the PV module 514b contained in each frame (or similarly, according to their module index <NUM>). Each frame <NUM> includes four cluster points <NUM> (respectively marked 'A' to 'D'). The frames <NUM> in each group are then arranged in a stacked arrangement (referred to as a stack) so that the cluster points <NUM> that are marked with the same alphabet ('A' - 'D') are stacked on top of each other. An exemplary stack <NUM> having the module index [<NUM>,<NUM>] is shown in <FIG>.

The image enhancement module <NUM> is further configured to discard the area <NUM> that are not part of the frames <NUM>.

Using the exemplary stack <NUM> as an example, the image enhancement module <NUM> is further configured to determine a reference frame having a highest image quality from the frames <NUM> within the exemplary stack <NUM>. The image quality is evaluated based on sharpness, SNR and completeness of the PV module 514b within the frames.

The image enhancement module <NUM> is further configured to perform image alignment of the frames <NUM>. This is done using an image alignment algorithm such as 'Parametric Image Alignment using Enhanced Correlation Coefficient'. The image enhancement module <NUM> aligns the remaining frames <NUM> in the exemplary stack <NUM> to the reference frame. Image alignment is done by aligning the cluster points <NUM> that are marked 'A' in the remaining frames to the corresponding cluster point <NUM> that is marked 'A' in the reference frame to obtain image-aligned frames <NUM>.

The image enhancement module <NUM> is further configured to perform image averaging on the image-aligned frames <NUM> to obtain an enhanced frame <NUM> of the particular PV module <NUM>. Image averaging is performed using a super-resolution routine such as weighted image stack averaging <NUM> and/or a dedicated deep convolutional network structure <NUM>. The enhanced frame <NUM> has higher SNR (i.e. lower noise) and higher resolution (up to a resolution improvement factor of three) than the reference frame.

The same process is repeated for the remaining stacks to obtain respective enhanced frames for the remaining PV modules 514b in the PV string 512b. The image processor <NUM> further controls the image enhancement module <NUM> to determine the respective corner points <NUM> of each enhanced frame and to remove any remaining perspective distortion in the enhanced frame.

The image processor <NUM> further controls the image enhancement module <NUM> to arrange the enhanced frames according to their module index <NUM> to produce an enhanced EL image of the PV string. If distances between the PV modules 514b in the PV string 512b are similar, a single enhanced EL image is produced. If distances vary due to a large gap <NUM> between two PV modules (which indicate that one of the PV modules belong to a separate PV string 512c), then a separate enhanced EL image is produced for the separate PV string 512c.

The image enhancement module <NUM> is further configured to scale the image intensities of each enhanced frame to reflect an intensity spectrum from the darkest to the brightest PV module 514b in the PV string 512b. Since the intensity scaling reduces a depth resolution of the PV module's intensity range, the enhanced frames for the respective PV modules 514b are stored together with the enhanced EL image of the PV string.

During image processing, image intensities are expressed in real or floating-point values. When visually displaying the resulting images, image intensities have to be assigned a brightness value between a darkest and a brightest displayable value. To reduce the influence of pixels with extreme image (or pixel) intensity values, a brightness range is defined by a lowest pixel intensity bin (dotted line 2201a) and a highest pixel intensity bin (dotted line 2201b) that contains a minimum number of pixels (referred before as the effective dynamic range).

<FIG> displays a pixel intensity histogram of the enhanced frame <NUM>. Two peaks 2200a,2200b can be seen corresponding to pixel intensities of a dark background and a bright EL signal respectively. A brightness range between the lowest pixel intensity bin (dotted line 2201a) and the highest pixel intensity bin (dotted line 2201b) is defined to exclude pixel intensities which do not occur in many pixels. In <FIG>, pixel intensities below the lowest pixel intensity bin (left of the dotted line 2201a) is set to the minimum value (<NUM>) and pixel intensities above the highest pixel intensity bin (right of the dotted line 2201b) will be set to the maximum value that can be saved according to a chosen precision (<NUM><NUM> - <NUM> = <NUM>, for <NUM> bit images). Image intensities in-between will be scaled between the minimum value (<NUM>) and the maximum value (<NUM>) of the defined brightness range.

<FIG> illustrates the enhanced EL image <NUM> of the PV string 512b after the image enhancement step is completed, and it is noted that resolution of the enhanced EL image <NUM> is better than the resolution of the reference frame. Notably, independent of the scanning direction <NUM>, i.e. left-to-right, right-to-left, top-to-bottom, or any other combination, the enhanced EL image <NUM> always aligns with the camera's yaw (i.e. optical axis 222a) since the EL images 2000a,2000b,2000c are captured with the camera's FOV <NUM> aligned to the PV string 512b. For ease of reference, a black triangle <NUM> is used to indicate a bottom-left corner of the enhanced EL image <NUM> with the enhanced EL image <NUM> aligned with the camera's FOV <NUM>.

Existing known methods may then be used to process the enhanced EL image <NUM> to identify any defective PV modules of the PV string 512b based on the EL imaging. With a defective PV module identified, it might be helpful to know the defective PV module's geo-location. For this purpose, the mapping module <NUM> can be used.

The image processor <NUM> controls the mapping module <NUM> to execute the MAP function as illustrated in <FIG>. The mapping module <NUM> is configured to map the enhanced EL image <NUM> of the PV string 512b onto a base-map of the PV string <NUM>. In order to identify the location of a PV module 514b (and thus, any defective PV module) in the PV string 512b from the enhanced EL image <NUM>, the following information is captured during the SCAN function, processed, and stored: frame-dependent timed geo-location (such as time, latitude, longitude, altitude) and camera orientation (e.g. yaw, pitch, roll). This information is stored in the meta-data <NUM> of every captured EL image/video (refer to <FIG>).

The image processor <NUM> controls the mapping module <NUM> to map the enhanced image onto the base-map by orientating the enhanced image to align the PV array subsection in the enhanced image to the PV array subsection in the base-map. If the geo-location of the PV string 512b in the enhanced EL image <NUM> is known, but not its orientation (i.e. camera's yaw), there are four possible orientations with respect to the black triangle <NUM> (<NUM>°, <NUM>°, <NUM>°, <NUM>° of rotation) to align the image with a PV string in a base-map layer. Commercially available PV modules generally have cell grids of 4x8, 6x10 or 6x12 cells, and are generally rectangular and not square. In such cases, only two of the four orientations are plausible: <NUM>° and <NUM>° of rotation with respect to the black triangle <NUM>. This is explained in further detail with reference to <FIG> which illustrate three enhanced EL images <NUM>,<NUM>,<NUM> with PV modules arranged in two rows, and two, three and five columns respectively.

The enhanced EL image <NUM> in <FIG> has the same number of rows and columns. Due to the shape of the PV module <NUM>, two of the four orientations (<NUM>° and <NUM>° of rotation with respect to the black triangle <NUM>) will result in the enhanced EL image <NUM> being skewed wrongly when the enhanced EL image <NUM> is mapped onto a base-map of its PV string.

Even though the enhanced EL image <NUM> in <FIG> has a square shape, the enhanced EL image <NUM> has a different number of PV modules <NUM> in its row and column. In two of the four orientations (<NUM>° and <NUM>° of rotation with respect to the black triangle <NUM>), the number of PV modules <NUM> in a row or column would not match the number of PV modules <NUM> in the same row or column of its PV string in the base-map.

The enhanced EL image <NUM> in <FIG> is depicted with two orientations (<NUM>° and <NUM>° of rotation with respect to the black triangle <NUM>). As can be seen, only these two orientations will result in an equally un-skewed image matching its base-map.

<FIG> illustrate the enhanced EL image <NUM> mapped onto a base-map <NUM> of the PV string 512b. Since the PV string 512b has a longitudinal axis (i.e. the array axis 10a in <FIG>), and the camera <NUM> is arranged to capture the EL images of the PV string 512b with the predefined size ratio, no single EL image captures the entire PV string 512b. Specifically, in this embodiment, eleven EL images of the PV string 512b are captured. Each EL image is associated with a unique image identifier <NUM>. In this embodiment, each EL image is numbered in ascending order from <NUM> to <NUM>.

When a particular EL image is used for image averaging to produce an enhanced frame, the image processor <NUM> further instructs the mapping module <NUM> to associate the image identifier <NUM> of the particular EL image with the enhanced frame. For example, the enhanced frame <NUM> is associated with unique number identifiers '<NUM>','<NUM>','<NUM>','<NUM>' and '<NUM>'. In other words, the corresponding frames extracted from the EL images '<NUM>','<NUM>','<NUM>','<NUM>', and '<NUM>' are used for image averaging to produce the enhanced frame <NUM>.

The mapping module <NUM> is then able to determine the orientation (from the two available orientations: <NUM>° and <NUM>° of rotation with respect to the black triangle <NUM>) of the enhanced image <NUM> based on the image identifiers <NUM> associated with each enhanced frame. The enhanced frames associated with the image identifier '<NUM>' represents the frames that are captured at the start of the SCAN function as opposed to the enhanced frames associated with the image identifier '<NUM>' which represent the frames that are captured at the end of the SCAN function.

Further indicators for position and orientation of the enhanced EL image <NUM> within the base-map <NUM> are discussed. An approximate center position <NUM> of the camera's FOV <NUM> along the PV string 512b can be calculated from the UAV's flight path <NUM> (including flight start <NUM> and flight end <NUM>), flight altitude and camera orientation.

<FIG> is a schematic diagram <NUM> illustrating a side view of the UAV <NUM> during the SCAN function for approximating the center position <NUM> of the camera's FOV <NUM> along the PV string 512b. The UAV <NUM> has an altitude <NUM> above ground of dz. The camera <NUM> is aligned at a pitch angle <NUM> relative to the ground of α. The pitch angle <NUM> is aligned to the tilt angle <NUM> of the PV string 512b relative to the ground. The distance <NUM> between the camera <NUM> and PV string 512b is dL. The distance <NUM> is readily available from a LIDAR reading or as measured by the LIDAR <NUM> during the FOCUS function. The horizontal distance <NUM> between the UAV <NUM> and the PV string 512b is dxy. The horizontal distance <NUM> can then be calculated either based on dL using Equation (<NUM>): <MAT>.

Or based on the dz and the height <NUM> of the PV string 512b from the ground dPV using Equation (<NUM>): <MAT>.

Equation (<NUM>) is preferred over Equation (<NUM>) because dxy,<NUM> requires the height of the imaged object (dPV) to be known or estimated. Further, the UAV <NUM> estimates dz barometrically which may be erroneous for longer flight times and changing weather.

Referring to <FIG>, the center position <NUM> of the camera's FOV <NUM> is within the PV string 512b while that UAV's flight path <NUM> is slightly below. With high quality location data and a simple PV string interconnection (which is the case for PV string 512b), the mapping module <NUM> is able to map the enhanced EL image <NUM> onto the base-map <NUM> accurately without further input. Where there are more complex PV string interconnections and/or low-quality location data, further input on the PV string is obtained through comparing measurement number, switcher box channel and information regarding which inverter box or combiner box <NUM> is connected to which switcher box channel and at what time.

<FIG> illustrates an exemplary enhanced EL image <NUM> being mapped onto an exemplary base-map <NUM> using a string alignment method. <FIG> illustrates an exemplary enhanced EL image <NUM> being mapped onto an exemplary base-map <NUM> using a module alignment method.

Referring to <FIG>, for the string alignment method, the corner points <NUM> of the base-map <NUM> is known and the enhanced EL image <NUM> is roughly aligned on top of the base-map <NUM>. If the base-maps contain multiple PV strings below the enhanced EL image <NUM>, the PV array <NUM> sharing most overlapping area with the enhanced EL image <NUM> is chosen. The four corner points <NUM> of the enhanced EL image <NUM> are then affine- or perspective aligned <NUM> by the mapping module <NUM> to the corner points <NUM> of the PV string inside the base-map <NUM>, and according to the most similar orientation.

Referring to <FIG>, in this embodiment, the number of PV modules in the enhanced EL image <NUM> do not match the number of PV modules in the base-map <NUM>. This happens when the enhanced EL image is generated from only a part of a scanned PV string or the interconnection of the PV modules within the PV string does not follow a regular pattern. In this case, in addition to the corner points <NUM> of the base-map <NUM>, the number of modules in each row and column of the PV string must be known. Furthermore, the PV modules within the enhanced EL image <NUM> must be roughly aligned with the PV modules of the base-map <NUM>. The image processor <NUM> then instructs the mapping module <NUM> to obtain an affine- or perspective image transform from the deflection vectors of the corners points <NUM> in the enhanced EL image <NUM> to all corresponding corner points <NUM> of the PV modules in the base-map <NUM>. The image processor <NUM> further instructs the mapping module <NUM> to map the enhanced EL image <NUM> onto the base-map <NUM> based on a largest overlap of the corner points <NUM> with the corner points <NUM>, and according to most similar orientation.

Once the enhanced EL image <NUM>,<NUM>,<NUM> is mapped onto the base-map <NUM>,<NUM>,<NUM>, information about the geo-location (such as GPS coordinate) of a PV module defect that is identified in the enhanced EL image <NUM>,<NUM>,<NUM> can be readily identified from the base-map <NUM>,<NUM>,<NUM> for repair works and/or maintenance.

Advantageously, in light of the described embodiment, it is possible for the UAV <NUM> to take low resolution, monochromatic videos under dim light conditions and yet enhanced resolution and improved quality images may be produced to identify defective PV modules and to estimate PV module power loss. In particular, the onboard processing sub-system <NUM> is capable of autonomously navigating the UAV <NUM> and executing the exemplary method <NUM>.

Further, since information such as frame-dependent timed geo-location (such as time, latitude, longitude, altitude etc) and camera orientation (e.g. yaw, pitch, roll) are processed, it is possible to reproduce the location of a PV string of a certain EL image reliably and accurately.

It should be noted that the various embodiments described herein should not be construed as limitative. For example, the UAV <NUM> may be further equipped with an ultrasound device for additional distance measurements. Furthermore, the camera <NUM> may capture still EL images of the PV string under forward bias, or record a video of the PV string instead. Further, instead of a monochromatic sensor, a colour sensor can be used. Although the described embodiment uses 'PV string' as an example, any other PV electrical connections may be used, and broadly, the embodiment may be used with any PV array.

Other types of aerial vehicles, such as drones may be used, and not only UAVs.

While the exemplary method <NUM> is described as including all <NUM> functions: FOCUS, POINT, FIND, ALIGN, SCAN, AUTO, FREEZE, MAP, it is understood that the system <NUM> may execute any number of the functions, and in any reasonable order. For example, in an alternative embodiment, the onboard processing sub-system <NUM> may not execute the AUTO function as the worker <NUM> may want greater control of which PV string to inspect. In this case, the worker manually controls the switcher box <NUM> and power supply <NUM> after the SCAN function is completed and initiates the FIND or SCAN function accordingly. The image processing device <NUM> may also execute the FREEZE function without the MAP function.

Furthermore, the FOCUS function may be executed at all times throughout the method <NUM>, especially while the SCAN function is in progress, to ensure the captured EL images have a high quality of sharpness. Alternatively, the FOCUS function need not be executed at all if the distance between UAV <NUM> and PV array <NUM> can be kept within a narrow range. In such an embodiment, fixed focus lenses without controlled focus adjustments may be used, instead of the focussing lens <NUM>.

Moreover, in an alternative embodiment, the UAV <NUM> may remotely transfer the captured EL images to the image processing device <NUM> without first returning to the base.

Furthermore, the pre-determined maximum value (dexp_max) may be set up to <NUM>.

In another example, the laser may not need to be turned off if the lens filter is arranged to filter out any optical interference from the laser.

Claim 1:
A method (<NUM>) of processing electroluminescence (EL) images (<NUM>, <NUM>, <NUM>, 2000a, 2000b, 2000c, <NUM>, <NUM>, <NUM>) of a PV array (<NUM>, <NUM>, <NUM>), comprising
extracting a plurality of frames (<NUM>, <NUM>) of a PV array subsection (512a, 512b) of the PV array (<NUM>, <NUM>, <NUM>) from the EL images (<NUM>, <NUM>, <NUM>, 2000a, 2000b, 2000c, <NUM>, <NUM>, <NUM>), the PV array subsection (512a, 512b) including one or more PV modules (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, 514b) of the PV array (<NUM>, <NUM>, <NUM>);
determining a reference frame having a highest image quality of the PV array subsection (512a, 512b) from among the extracted frames (<NUM>, <NUM>);
performing image alignment of the extracted frames (<NUM>, <NUM>) to the reference frame to generate image aligned frames (<NUM>) by
arranging the extracted frames (<NUM>, <NUM>) in a stacked arrangement, wherein respective corner points (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of the PV modules (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, 514b) are stacked; and
aligning the respective corner points (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of each PV module (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, 514b) in the extracted frames (<NUM>, <NUM>) to the corresponding corner points (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of the PV module (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, 514b) in the reference frame; and
processing the image aligned frames (<NUM>) to produce an enhanced image (<NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>) of the PV array subsection (512a, 512b) having a higher resolution than the reference frame.