Transfer learning by downscaling and upscaling
A method for transfer learning is provided. A first set of image data at a first resolution is received. Metadata, comprising object data, associated with the first set of image data is received. A second set of images having a second resolution is generated by downsampling the first set of image data. A third set of image data having a third resolution is generated by upscaling the second set of image data. The third set of image data is associated with the metadata associated to the first set of image data. A computer implemented model is trained to detect objects using the combination of the third set of image data and the associated metadata. A fourth set of image data at the third resolution is received. The trained computer implemented model is refined using the fourth set of image data.
1 . A computer-implemented method for transfer learning, the method comprising:
receiving a first set of image data, wherein the first set of image data comprises two or more sequential images at a first resolution, the first set of images having been used to train a first camera detection model, the first camera detection model operating at the first resolution;
receiving metadata associated with each of the sequential images of the first set of image data, wherein the metadata comprises detected object data;
generating a second set of image data by downsampling each of the sequential images of the first set of image data, wherein each of downsampled images of the second set of images has a second resolution;
generating a third set of image data by upscaling each of the sequential images of the second set of image data wherein each of the upscaled images has a third resolution;
associating each of the sequential images of the third set of image data to the metadata associated to each of the sequential images of the first set of image data;
training a second computer-implemented model using the combination of the third set of image data and the associated metadata, wherein the second computer-implemented model is trained to detect objects in images at the third resolution;
receiving a fourth set of image data, wherein the fourth set of image data comprises two or more sequential images at the third resolution; and
refining the second trained computer-implemented model using the fourth set of image data.
2 . The method of claim 1 wherein the first set of image data further comprises at least one additional set of image data, wherein the at least one additional set of image data comprises: image data captured at different times; and/or image data captured at one or more different resolutions.
3 . The method of claim 1 wherein downsampling comprises any one or any combination of: downsampling by a fraction; one or more machine learning models; and one or more interpolation methods.
4 . The method claim 1 wherein downsampling comprises downsampling to a target resolution.
5 . The method of claim 1 claim wherein upscaling comprises any one or any combination of: one or more machine learning models; one or more interpolation methods; and one or more generative adversarial networks.
6 . The method of claim 1 claim wherein upscaling comprises upscaling to a target resolution.
7 . The method of claim 1 wherein the metadata comprises any one or any combination of: label data; annotations; timestamp data or one or more bounding boxes.
8 . The method of claim 1 wherein the first, second, third or fourth sets of image data comprise video data.
9 . The method of claim 8 further comprising:
the first set of image data further comprising video data at a first frame rate; and/or
the second set of image data further comprising video data at a second frame rate; and/or
the third set of image data further comprising video data at a third frame rate.
10 . The method of claim 9 wherein the step of downsampling comprises downsampling the first frame rate to the second frame rate.
11 . The method of claim 9 wherein the step of upscaling comprises upscaling the second frame rate to the third frame rate.
12 . A non-transitory computer-readable medium comprising instructions which, when executed by a computer, cause the computer to carry out the method of claim 1 .
13 . A computer-implemented method of using a second trained computer-implemented model to detect objects in one or more sequential images, wherein the second computer-implemented model is trained by:
receiving a first set of image data, wherein the first set of image data comprises two or more sequential images at a first resolution, the first set of images having been used to train a first camera detection model, the first camera detection model operating at the first resolution;
receiving metadata associated with each of the sequential images of the first set of image data, wherein the metadata comprises detected object data;
generating a second set of image data by downsampling each of the sequential images of the first set of image data, wherein each of downsampled images of the second set of images has a second resolution;
generating a third set of image data by upscaling each of the sequential images of the second set of image data wherein each of the upscaled images has a third resolution;
associating each of the sequential images of the third set of image data to the metadata associated to each of the sequential images of the first set of image data;
training the second computer-implemented model using the combination of the third set of image data and the associated metadata, wherein the second computer-implemented model is trained to detect objects in images at the third resolution;
receiving a fourth set of image data, wherein the fourth set of image data comprises two or more sequential images at the third resolution; and
refining the second trained computer-implemented model using the fourth set of image data.
14 . An object detection system for image data comprising:
at least one camera operable to capture a set of input image data, wherein the set of input image data comprises two or more sequential images at a third resolution;
a server operable to detect objects in one or more sequential images using a second trained computer-implemented model, wherein the server is further operable to generate detected object data for the set of input image data;
wherein the server comprises a computer-implemented model trained by:
receiving a first set of image data, wherein the first set of image data comprises two or more sequential images at a first resolution, the first set of images having been used to train a first camera detection model, the first camera detection model operating at the first resolution;
receiving metadata associated with each of the sequential images of the first set of image data, wherein the metadata comprises detected object data;
generating a second set of image data by downsampling each of the sequential images of the first set of image data, wherein each of downsampled images of the second set of images has a second resolution;
generating a third set of image data by upscaling each of the sequential images of the second set of image data wherein each of the upscaled images has the third resolution;
associating each of the sequential images of the third set of image data to the metadata associated to each of the sequential images of the first set of image data;
training the second computer-implemented model using the combination of the third set of image data and the associated metadata, wherein the second computer-implemented model is trained to detect objects in images at the third resolution;
receiving a fourth set of image data, wherein the fourth set of image data comprises two or more sequential images at the third resolution; and
refining the second trained computer-implemented model using the fourth set of image data.