-
Notifications
You must be signed in to change notification settings - Fork 27
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #82 from PUTvision/cars_detection_yolo_tutorial
Cars detection yolo tutorial
- Loading branch information
Showing
11 changed files
with
554 additions
and
17 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
Model creation tutorial | ||
======================= | ||
|
||
|
||
========= | ||
Detection | ||
========= | ||
|
||
For one of models in our zoo - specifically for cars detection on aerial images - a complete tutorial is provided in a jupyter notebook: | ||
|
||
.. code-block:: | ||
./tutorials/detection/cars_yolov7/car_detection__prepare_and_train.ipynb | ||
The notebook covers: | ||
* downloading yolov7 repository | ||
* downloading the training dataset | ||
* preparing training data and labels in yolov7 format | ||
* running th training and testing | ||
* conversion to ONNX model | ||
* adding default parameters for Deepness plugin | ||
|
||
Example model inference can be found in the :code:`Examples` section. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
YOLOv7 cars detection | ||
=================================== | ||
|
||
The following example shows how to use the YOLOv7 model for cars (and other vehicles) detection in aerial or satellite images. | ||
|
||
======= | ||
Dataset | ||
======= | ||
|
||
The example is based on the `ITCVD cars detection dataset <https://arxiv.org/pdf/1801.07339.pdf>`_. It provides aerial images with 10 cm/px resolution. Annotation bounding boxes for the cars are provided. | ||
|
||
========================= | ||
Training tutorial | ||
========================= | ||
|
||
The entire training process has been gathered in a tutorial notebook in jupyter notebook: | ||
|
||
|
||
.. code-block:: | ||
./tutorials/detection/cars_yolov7/car_detection__prepare_and_train.ipynb | ||
================== | ||
Example inference | ||
================== | ||
|
||
Run QGIS, next add "Poznan 2022 aerial" map using :code:`QuickMapServices` plugin. | ||
|
||
Alternatively you can use any other aerial or satellite map with resolution of at least 10 cm/pixel | ||
|
||
.. image:: ../images/cars_near_poznan_university_of_technology_on_ortophoto__zoom_in.webp | ||
|
||
Then run our plugin and set parameters like in the screenshot below. You can find the pre-trained onnx model at :code:`https://chmura.put.poznan.pl/s/vgOeUN4H4tGsrGm`. Push the Run button to start processing. | ||
|
||
.. image:: ../images/cars_near_poznan_university_of_technology_on_ortophoto.webp | ||
|
||
|
||
Another inference on random street in Poznan: | ||
|
||
.. image:: ../images/cars_on_ransom_street_in_poznan.webp | ||
|
||
|
||
And output mask for an Grunwald district in Poznan: | ||
|
||
.. image:: ../images/ecars_in_poznan_grunwald_district.webp |
Binary file not shown.
Binary file added
BIN
+748 KB
docs/source/images/cars_near_poznan_university_of_technology_on_ortophoto.webp
Binary file not shown.
Binary file added
BIN
+463 KB
docs/source/images/cars_near_poznan_university_of_technology_on_ortophoto__zoom_in.webp
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,7 +6,7 @@ | |
name=Deepness: Deep Neural Remote Sensing | ||
qgisMinimumVersion=3.22 | ||
description=Inference of deep neural network models (ONNX) for segmentation, detection and regression | ||
version=0.4.1 | ||
version=0.5.0 | ||
author=PUT Vision | ||
[email protected] | ||
|
||
|
@@ -17,7 +17,7 @@ about= | |
- limiting processing range to predefined area (visible part or area defined by vector layer polygons) | ||
- common types of models are supported: segmentation, regression, detection | ||
- integration with layers (both for input data and model output layers). Once an output layer is created, it can be saved as a file manually | ||
- model ZOO under development (planes detection on Bing Aerial, Corn field damage, Oil Storage tanks detection, ...) | ||
- model ZOO under development (planes detection on Bing Aerial, Corn field damage, Oil Storage tanks detection, cars detection, ...) | ||
- training data Export Tool - exporting raster and mask as small tiles | ||
- parametrization of the processing for advanced users (spatial resolution, overlap, postprocessing) | ||
Plugin requires external python packages to be installed. After the first plugin startup, a Dialog will show, to assist in this process. Please visit plugin the documentation for details. | ||
|
Oops, something went wrong.