From b001f7082c12b9e9b4235db442cfd1b7fc2213b5 Mon Sep 17 00:00:00 2001 From: jrejon <32961670+jrejon@users.noreply.github.com> Date: Tue, 28 Apr 2020 11:21:54 -0400 Subject: [PATCH 01/15] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 2b398e3..07a2a18 100755 --- a/README.md +++ b/README.md @@ -6,11 +6,11 @@ ## To do list: - [x] Import model detection (SSD & YOLO3) - [x] Model Panel Detection (SSD7) -- [ ] Model Panel Detection (YOLO3) +- [x] Model Panel Detection (YOLO3) - [x] Model Soiling Fault Detection (YOLO3) - [x] Model Diode Fault Detection (YOLO3) - [ ] Model Other Fault Detection -- [ ] Model Fault Panel Disconnect +- [x] Model Fault Panel Disconnect - [x] Example use Trained Model From c816e122ec81fb91602fe3b69f72094c7530dc33 Mon Sep 17 00:00:00 2001 From: Alvaro Farias Date: Mon, 4 May 2020 16:44:33 -0400 Subject: [PATCH 02/15] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 07a2a18..cf8980b 100755 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Rentadrone_MachineLearning Photovoltaic fault detector - +[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md) ## To do list: - [x] Import model detection (SSD & YOLO3) From 79b296071a160f194ec397de9c686e5b8c2eebd9 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Mon, 15 Jun 2020 18:50:52 -0400 Subject: [PATCH 03/15] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index be511a3..b75f08a 100755 --- a/README.md +++ b/README.md @@ -190,7 +190,7 @@ All of weights of this trained model grab from [Drive_Weights](https://drive.goo | YOLO3 Panel | [weight](https://drive.google.com/open?id=14zgtgDJv3KTvhRC-VOz6sqsGPC_bdrL1) | [config](config_full_yolo_panel_infer.json) | | YOLO3 Soiling | [weight](https://drive.google.com/open?id=1YLgkn1wL5xAGOpwd2gzdfsJVGYPzszn-) | [config](config_full_yolo_fault_1_infer.json) | | YOLO3 Diode | [weight](https://drive.google.com/open?id=1VUtrK9JVTbzBw5dX7_dgLTMToFHbAJl1) | [config](config_full_yolo_fault_4_infer.json) | -| YOLO3 Affected Cell | [weight(https://drive.google.com/open?id=1ngyCzw7xF0N5oZnF29EIS5LOl1PFkRRM) | [config](config_full_yolo_fault_2_infer.json) | +| YOLO3 Affected Cell | [weight](https://drive.google.com/open?id=1ngyCzw7xF0N5oZnF29EIS5LOl1PFkRRM) | [config](config_full_yolo_fault_2_infer.json) | ## Panel Detector ### SDD7 @@ -220,7 +220,7 @@ On folder [Result yolo3 fault 1](Result_yolo3_fault_1/) show [history train](Res ![](Result_yolo3_fault_1/result_yolo3_fault_1/Mision_11_DJI_0011.jpg) -## Diode Affected Cell Detector +## Affected Cell Detector ### YOLO3 On folder [Result yolo3 fault 2](Result_yolo3_fault_2/) show [history train](Result_yolo3_fault_2/yolo3_full_yolo.output), weight and result of this model (mAP 71.93%). From 33b6ff9523e0ae5186636fe18b60b270c6462792 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Mon, 15 Jun 2020 19:06:24 -0400 Subject: [PATCH 04/15] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b75f08a..9071a47 100755 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ - [x] Model Panel Detection (YOLO3) - [x] Model Soiling Fault Detection (YOLO3) - [x] Model Diode Fault Detection (YOLO3) -- [ ] Model Other Fault Detection +- [x] Model Other Fault Detection - [x] Model Fault Panel Disconnect - [x] Example use Trained Model From 3245bc50f4c76c1abe82593d763b29f31eb65523 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Mon, 13 Jul 2020 21:32:35 -0400 Subject: [PATCH 05/15] Create README_Result.md --- README_Result.md | 76 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 README_Result.md diff --git a/README_Result.md b/README_Result.md new file mode 100644 index 0000000..c9b83c7 --- /dev/null +++ b/README_Result.md @@ -0,0 +1,76 @@ +# Result Photovoltaic fault detector + +## Panel Detector +### SDD7 +On folder [Result ssd7 panel](Result_ssd7_panel/) show code (jupyter notebook), weight and result of this model (mAP 89.8%). + +

+ +

+

+ +

+ + + +### YOLO3 +On folder [Result yolo3 panel](Result_yolo3_panel/) weight and result of this model (mAP 86.3%). + +

+ +

+ + + +## Soiling Fault Detector +### SSD300 +On folder [Result ssd300 fault 1](Result_ssd300_fault_1/) show code (jupyter notebook), weight and result of this model (mAP 79.5%). + +

+ +

+ + +### YOLO3 +On folder [Result yolo3 fault 1](Result_yolo3_fault_1/) show [history train](Result_yolo3_fault_1/yolo3_full_yolo.output), weight and result of this model (mAP 73.02%). + +

+ +

+ + +## Affected Cell Detector +### YOLO3 +On folder [Result yolo3 fault 2](Result_yolo3_fault_2/) show [history train](Result_yolo3_fault_2/yolo3_full_yolo.output), weight and result of this model (mAP 71.93%). + + +

+ +

+ + +## Diode Fault Detector +### YOLO3 +On folder [Result yolo3 fault 4](Result_yolo3_fault_4/) show [history train](Result_yolo3_fault_4/yolo3_full_yolo.output), weight and result of this model (mAP 66.22%). + + +

+ +

+ + + + + +## Panel Disconnect Detector +### YOLO3 +To use the detector we must only use 'panel_yolo3_disconnect.py' with the previously established form, that is: +`python predict_yolo3_disconnect.py -c config_full_yolo_panel_infer.json -i /path/to/image/ -o /path/output/result` +To use this model, only the yolo3_panel detector model is needed. + +

+ +

+ + +The idea to detect the disconnection is by calculating the luminosity of each panel, to then normalize this data and highlight the panels with a luminosity out of normality. From a8c9945873f93b0710228d295caf96c0658cc1f3 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Mon, 13 Jul 2020 22:14:30 -0400 Subject: [PATCH 06/15] Update requirements.txt --- requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements.txt b/requirements.txt index 0826547..41806ca 100644 --- a/requirements.txt +++ b/requirements.txt @@ -16,3 +16,4 @@ termcolor tqdm Werkzeug wrapt +beautifulsoup4 From 56ffe063d77a9fc6487dff6bc44d79aca6632c0d Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Mon, 13 Jul 2020 22:40:26 -0400 Subject: [PATCH 07/15] Update README.md --- README.md | 101 +++++++++++++++++++++--------------------------------- 1 file changed, 40 insertions(+), 61 deletions(-) diff --git a/README.md b/README.md index 9071a47..f36484e 100755 --- a/README.md +++ b/README.md @@ -3,6 +3,10 @@ [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md) +Rentadrone.cl +Model-definition is a deep learning application for fault detection in photovoltaic plants. In this repository you will find trained detection models that point out where the panel faults are by using radiometric thermal infrared pictures, as well as a tutorial on how to use these algorithms in your own thermal photos. It also shows a step by step to train these models with its own database, in order to properly adjust the model to its particularity. + + ## To do list: - [x] Import model detection (SSD & YOLO3) - [x] Model Panel Detection (SSD7) @@ -15,7 +19,7 @@ -## Dependencies +## Requirements * Python 3.x * Numpy @@ -24,7 +28,37 @@ * OpenCV * Beautiful Soup 4.x -## Model Detection +## Quickstart +In the root project execute the following command to install all dependencies project + +``` +pip install -r requirements.txt + +``` +You need install Jupyter notebook to see the code example. You can find the installation documentation for the [Jupyter platform, on ReadTheDocs](https://jupyter.readthedocs.io/en/latest/install.html) or in github page [here](https://github.com/jupyter/notebook). + +For a local installation, make sure you have pip installed and run: +``` +pip install notebook + +``` + +# Example to use trained model +In ['Example_Prediction'](Example_prediction.ipynb) this is the example of how to implement an already trained model, it can be modified to change the model you have to use and the image in which you want to detect faults. +In ['Example_Prediction_AllInOne'](Example Detection AllInOne.ipynb) this is the example of how implement all trained model, you can use this code for predict a folder of images and have a output image with detection boxes. +In ['Example_Prediction_Orthophoto'](Example_prediction_Ortofoto.ipynb) this is the example of how implement all trained model, you can use this code for predict a Orthophot and have a output image with detection boxes. + + +## Developers +Help improve our software! We welcome contributions from everyone, whether to add new features, improve speed, fix existing bugs or add support. [Check our code of conduct](CODE_OF_CONDUCT.md), [the contributing guidelines](CONTRIBUTING.md) and how decisions are made. + +Any code contributions are welcomed as long as they are discussed in [Github Issues](https://github.com/RentadroneCL/model-definition/issues) with maintainers. Be aware that if you decide to change something and submit a PR on your own, it may not be accepted. + +#### Creating an issue +You can open a new issue based on code from an existing pull request. For more information, see [the template for filling issues](https://github.com/RentadroneCL/model-definition/blob/master/.github/ISSUE_TEMPLATE/feature_request.md) + + +# Model Detection The models used for detection are SSD [SSD: Single Shot MultiBox Detector](https://arxiv.org/abs/1512.02325) and YOLOv3 [YOLOv3: An Incremental Improvement] (https://arxiv.org/abs/1804.02767), they are imported from the following repositories: * [SSD_Keras](https://github.com/pierluigiferrari/ssd_keras#how-to-fine-tune-one-of-the-trained-models-on-your-own-dataset) * [YOLOv3_Keras](https://github.com/experiencor/keras-yolo3) @@ -36,6 +70,7 @@ Grab the pretrained weights of SSD and YOLO3 from [Drive_Weights](https://drive | SSD7/SSD300 | [Weight VGG16](https://drive.google.com/open?id=1VHTx28tGI94yFqwT_WHp-xkx_8Hh_A31)| | YOLO3 | [Weight Full Yolo3](https://drive.google.com/open?id=1cnCQHl-TnOrwb-leug1I0O9vMBaSwJLt)| + ## Type of Data The images used for the design of this model were extracted by air analysis, specifically: FLIR aerial radiometric thermal infrared pictures, taken by UAV (R-JPEG format). Which were converted into .jpg images for the training of these detection models. Example FLIR image: @@ -180,7 +215,7 @@ The evaluation is integrated into the training process, if you want to do the in Compute the mAP performance of the model defined in `saved_weights_name` on the validation dataset defined in `valid_image_folder` and `valid_annot_folder`. -# Result +# Weights of Trained Models All of weights of this trained model grab from [Drive_Weights](https://drive.google.com/drive/folders/1LSc9FkAwJrAAT8pAUWz8aax_biFAMMXS?usp=sharing) | Model | Weights Trained | Config | @@ -192,60 +227,8 @@ All of weights of this trained model grab from [Drive_Weights](https://drive.goo | YOLO3 Diode | [weight](https://drive.google.com/open?id=1VUtrK9JVTbzBw5dX7_dgLTMToFHbAJl1) | [config](config_full_yolo_fault_4_infer.json) | | YOLO3 Affected Cell | [weight](https://drive.google.com/open?id=1ngyCzw7xF0N5oZnF29EIS5LOl1PFkRRM) | [config](config_full_yolo_fault_2_infer.json) | -## Panel Detector -### SDD7 -On folder [Result ssd7 panel](Result_ssd7_panel/) show code (jupyter notebook), weight and result of this model (mAP 89.8%). - -![](Result_ssd7_panel/result_ssd7_panel/DJI_0020.jpg) - -![](Result_ssd7_panel/result_ssd7_panel/DJI_0110.jpg) - - -### YOLO3 -On folder [Result yolo3 panel](Result_yolo3_panel/) weight and result of this model (mAP 86.3%). - -![](Result_yolo3_panel/Mision%203_DJI_0045.jpg) - -## Soiling Fault Detector -### SSD300 -On folder [Result ssd300 fault 1](Result_ssd300_fault_1/) show code (jupyter notebook), weight and result of this model (mAP 79.5%). - - -![](Result_ssd300_fault_1/result_ssd300_fault_1/Mision_11_DJI_0011.jpg) - - -### YOLO3 -On folder [Result yolo3 fault 1](Result_yolo3_fault_1/) show [history train](Result_yolo3_fault_1/yolo3_full_yolo.output), weight and result of this model (mAP 73.02%). - - -![](Result_yolo3_fault_1/result_yolo3_fault_1/Mision_11_DJI_0011.jpg) - -## Affected Cell Detector -### YOLO3 -On folder [Result yolo3 fault 2](Result_yolo3_fault_2/) show [history train](Result_yolo3_fault_2/yolo3_full_yolo.output), weight and result of this model (mAP 71.93%). - -![](Result_yolo3_fault_2/result_yolo3_fault_2/Mision%2010_DJI_0093.jpg) - -## Diode Fault Detector -### YOLO3 -On folder [Result yolo3 fault 4](Result_yolo3_fault_4/) show [history train](Result_yolo3_fault_4/yolo3_full_yolo.output), weight and result of this model (mAP 66.22%). - -![](Result_yolo3_fault_4/result_yolo3_fault_4/Mision%2041_DJI_0044.jpg) - - - - -## Panel Disconnect Detector -### YOLO3 -To use the detector we must only use 'panel_yolo3_disconnect.py' with the previously established form, that is: -`python predict_yolo3_disconnect.py -c config_full_yolo_panel_infer.json -i /path/to/image/ -o /path/output/result` -To use this model, only the yolo3_panel detector model is needed. - - -![](Result_yolo3_panel/Mision%2011_DJI_0058.jpg) - -The idea to detect the disconnection is by calculating the luminosity of each panel, to then normalize this data and highlight the panels with a luminosity out of normality. - +The image used are specified in [Table images](Training_Images.xlsx). +You can see some examples in [Summary of results] (README_Result.md). # Contributing Contributions are welcome and will be fully credited. We accept contributions via Pull Requests on GitHub. @@ -261,7 +244,3 @@ Before sending your pull requests, make sure you followed this list. - Run [Unit Tests](https://github.com/RentadroneCL/model-definition/CONTRIBUTING.md#running-unit-tests). -# Example to use trained model - -In ['Example_Prediction'](Example_prediction.ipynb) this is the example of how to implement an already trained model, it can be modified to change the model you have to use and the image in which you want to detect faults. -In ['Example_Prediction_AllInOne'](Example Detection AllInOne.ipynb) this is the example of how implement all trained model, you can use this code for predict a folder of images and have a output image with detection boxes. From 196ede633ead3ffd4cd4b63cd05b364fb5f0506f Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Mon, 13 Jul 2020 22:41:30 -0400 Subject: [PATCH 08/15] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f36484e..b170e8b 100755 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ pip install notebook ``` -# Example to use trained model +## Example to use trained model In ['Example_Prediction'](Example_prediction.ipynb) this is the example of how to implement an already trained model, it can be modified to change the model you have to use and the image in which you want to detect faults. In ['Example_Prediction_AllInOne'](Example Detection AllInOne.ipynb) this is the example of how implement all trained model, you can use this code for predict a folder of images and have a output image with detection boxes. In ['Example_Prediction_Orthophoto'](Example_prediction_Ortofoto.ipynb) this is the example of how implement all trained model, you can use this code for predict a Orthophot and have a output image with detection boxes. From de6f15aa48f5a1432764e1a2b45bb676686b28e6 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Mon, 13 Jul 2020 23:47:55 -0400 Subject: [PATCH 09/15] Update README.md --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b170e8b..0ec4a45 100755 --- a/README.md +++ b/README.md @@ -45,7 +45,9 @@ pip install notebook ## Example to use trained model In ['Example_Prediction'](Example_prediction.ipynb) this is the example of how to implement an already trained model, it can be modified to change the model you have to use and the image in which you want to detect faults. -In ['Example_Prediction_AllInOne'](Example Detection AllInOne.ipynb) this is the example of how implement all trained model, you can use this code for predict a folder of images and have a output image with detection boxes. + +In ['Example Prediction AllInOne'](Example%20Detection%20AllInOne.ipynb) this is the example of how implement all trained model, you can use this code for predict a folder of images and have a output image with detection boxes. + In ['Example_Prediction_Orthophoto'](Example_prediction_Ortofoto.ipynb) this is the example of how implement all trained model, you can use this code for predict a Orthophot and have a output image with detection boxes. @@ -229,6 +231,7 @@ All of weights of this trained model grab from [Drive_Weights](https://drive.goo The image used are specified in [Table images](Training_Images.xlsx). You can see some examples in [Summary of results] (README_Result.md). + # Contributing Contributions are welcome and will be fully credited. We accept contributions via Pull Requests on GitHub. From 4862211180ac52572de8cd6bdeb2547bf1794abe Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Wed, 15 Jul 2020 16:26:46 -0400 Subject: [PATCH 10/15] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0ec4a45..4540b72 100755 --- a/README.md +++ b/README.md @@ -230,7 +230,7 @@ All of weights of this trained model grab from [Drive_Weights](https://drive.goo | YOLO3 Affected Cell | [weight](https://drive.google.com/open?id=1ngyCzw7xF0N5oZnF29EIS5LOl1PFkRRM) | [config](config_full_yolo_fault_2_infer.json) | The image used are specified in [Table images](Training_Images.xlsx). -You can see some examples in [Summary of results] (README_Result.md). +You can see some examples in [Summary of results](README_Result.md). # Contributing From 02101cc45867544377dc7673d8d72d1bbae3c9c5 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Fri, 17 Jul 2020 15:18:35 -0400 Subject: [PATCH 11/15] Update README.md --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4540b72..9248d09 100755 --- a/README.md +++ b/README.md @@ -3,7 +3,11 @@ [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md) -Rentadrone.cl +# Detection Models + +[Rentadrone.cl](https://rentadronecl.github.io) + +## Summary Model-definition is a deep learning application for fault detection in photovoltaic plants. In this repository you will find trained detection models that point out where the panel faults are by using radiometric thermal infrared pictures, as well as a tutorial on how to use these algorithms in your own thermal photos. It also shows a step by step to train these models with its own database, in order to properly adjust the model to its particularity. From a54cae0c201d7f7a80bdf7184586e6a121455230 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Fri, 17 Jul 2020 15:19:22 -0400 Subject: [PATCH 12/15] Update README.md --- README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index 9248d09..9a82ef9 100755 --- a/README.md +++ b/README.md @@ -1,10 +1,8 @@ -# Rentadrone_MachineLearning Photovoltaic fault detector +# Photovoltaic Fault Detector [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md) -# Detection Models - [Rentadrone.cl](https://rentadronecl.github.io) ## Summary From 256a142a6c51a0a99feeafb0e7412c788753d046 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Fri, 17 Jul 2020 15:22:34 -0400 Subject: [PATCH 13/15] Update README.md --- README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 9a82ef9..b5659d6 100755 --- a/README.md +++ b/README.md @@ -6,18 +6,19 @@ [Rentadrone.cl](https://rentadronecl.github.io) ## Summary -Model-definition is a deep learning application for fault detection in photovoltaic plants. In this repository you will find trained detection models that point out where the panel faults are by using radiometric thermal infrared pictures, as well as a tutorial on how to use these algorithms in your own thermal photos. It also shows a step by step to train these models with its own database, in order to properly adjust the model to its particularity. - +Model-definition is a deep learning application for fault detection in photovoltaic plants. In this repository you will find trained detection models that point out where the panel faults are by using radiometric thermal infrared pictures. ## To do list: - [x] Import model detection (SSD & YOLO3) +- [x] Example use Trained Model +- [x] Train and Evaluate Model with own data - [x] Model Panel Detection (SSD7) - [x] Model Panel Detection (YOLO3) - [x] Model Soiling Fault Detection (YOLO3) - [x] Model Diode Fault Detection (YOLO3) - [x] Model Other Fault Detection - [x] Model Fault Panel Disconnect -- [x] Example use Trained Model + From 33aa21cb8e6b6607410a52a8bf732804e3bd4575 Mon Sep 17 00:00:00 2001 From: Daniel Saavedra Date: Fri, 17 Jul 2020 15:24:35 -0400 Subject: [PATCH 14/15] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b5659d6..c24255a 100755 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ [Rentadrone.cl](https://rentadronecl.github.io) ## Summary -Model-definition is a deep learning application for fault detection in photovoltaic plants. In this repository you will find trained detection models that point out where the panel faults are by using radiometric thermal infrared pictures. +Model-definition is a deep learning application for fault detection in photovoltaic plants. In this repository you will find trained detection models that point out where the panel faults are by using radiometric thermal infrared pictures. In [Web-API](https://github.com/RentadroneCL/Web-API) contains a performant, production-ready reference implementation of this repository. ## To do list: - [x] Import model detection (SSD & YOLO3) From 29d5c4aa5ce5e8ab23dee5bb9f9b9c243ea20460 Mon Sep 17 00:00:00 2001 From: Alvaro Farias Date: Sun, 19 Jul 2020 18:21:23 -0400 Subject: [PATCH 15/15] =?UTF-8?q?=F0=9F=93=9D=20update=20readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MLDataFlow.svg | 1 + README.md | 8 +++++--- 2 files changed, 6 insertions(+), 3 deletions(-) create mode 100644 MLDataFlow.svg diff --git a/MLDataFlow.svg b/MLDataFlow.svg new file mode 100644 index 0000000..1904155 --- /dev/null +++ b/MLDataFlow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/README.md b/README.md index c24255a..134ae16 100755 --- a/README.md +++ b/README.md @@ -1,14 +1,19 @@ # Photovoltaic Fault Detector +[![License](https://poser.pugx.org/composer/spdx-licenses/license)](https://packagist.org/packages/composer/spdx-licenses) [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md) [Rentadrone.cl](https://rentadronecl.github.io) ## Summary + Model-definition is a deep learning application for fault detection in photovoltaic plants. In this repository you will find trained detection models that point out where the panel faults are by using radiometric thermal infrared pictures. In [Web-API](https://github.com/RentadroneCL/Web-API) contains a performant, production-ready reference implementation of this repository. +![Data Flow](MLDataFlow.svg) + ## To do list: + - [x] Import model detection (SSD & YOLO3) - [x] Example use Trained Model - [x] Train and Evaluate Model with own data @@ -19,9 +24,6 @@ Model-definition is a deep learning application for fault detection in photovolt - [x] Model Other Fault Detection - [x] Model Fault Panel Disconnect - - - ## Requirements * Python 3.x