https://airwiki.elet.polimi.it/api.php?action=feedcontributions&user=AndreaMachina&feedformat=atomAIRWiki - User contributions [en]2021-12-05T23:33:11ZUser contributionsMediaWiki 1.25.6https://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_Data_set.zip&diff=3623File:Plate detection Data set.zip2008-06-18T21:33:19Z<p>AndreaMachina: </p>
<hr />
<div></div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3622Plate detection algorithm2008-06-18T21:27:09Z<p>AndreaMachina: /* Documentation and useful files */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
[[Image:plate_detection_approach_1_a.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
[[Image:plate_detection_approach_1_b.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
<br />
[[Image:plate_detection_approach_1_a_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
[[Image:plate_detection_approach_1_b_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
<br />
[[Image:Plate_detection_approach_2_a.jpg|center|frame|This image shows the amount of candidates found applying the second approach. In this case it found 209 candidates, too much.]]<br />
<br />
<br />
3) This solution didn’t give good results because it is heavy influenced by noises. Small white areas in candidates can in fact influence the medium value calculated, changing the order of the elements in the list.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
* [[Media:Plate_detection_src.zip | C Source code]]<br />
<br />
* [[Media:Plate_detection_Data_set.zip | Data set]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3621Plate detection algorithm2008-06-18T15:25:36Z<p>AndreaMachina: /* Results and problems */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
[[Image:plate_detection_approach_1_a.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
[[Image:plate_detection_approach_1_b.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
<br />
[[Image:plate_detection_approach_1_a_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
[[Image:plate_detection_approach_1_b_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
<br />
[[Image:Plate_detection_approach_2_a.jpg|center|frame|This image shows the amount of candidates found applying the second approach. In this case it found 209 candidates, too much.]]<br />
<br />
<br />
3) This solution didn’t give good results because it is heavy influenced by noises. Small white areas in candidates can in fact influence the medium value calculated, changing the order of the elements in the list.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
* [[Media:Plate_detection_src.zip | C Source code]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3620Plate detection algorithm2008-06-18T15:23:44Z<p>AndreaMachina: /* Results and problems */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
[[Image:plate_detection_approach_1_a.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
[[Image:plate_detection_approach_1_b.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
<br />
[[Image:plate_detection_approach_1_a_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
[[Image:plate_detection_approach_1_b_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
<br />
[[Image:Plate_detection_approach_2_a.jpg|center|frame|This image shows the amount of candidates found applying the second approach. In this case it found 209 candidates, too much.]]<br />
<br />
<br />
3) This solution didn’t give good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
* [[Media:Plate_detection_src.zip | C Source code]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3619Plate detection algorithm2008-06-18T14:48:14Z<p>AndreaMachina: /* Documentation and useful files */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
[[Image:plate_detection_approach_1_a.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
[[Image:plate_detection_approach_1_b.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
<br />
[[Image:plate_detection_approach_1_a_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
[[Image:plate_detection_approach_1_b_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
<br />
[[Image:Plate_detection_approach_2_a.jpg|center|frame|This image shows the amount of candidates found applying the second approach. In this case it found 209 candidates, too much.]]<br />
<br />
<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
* [[Media:Plate_detection_src.zip | C Source code]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_src.zip&diff=3618File:Plate detection src.zip2008-06-18T14:46:55Z<p>AndreaMachina: </p>
<hr />
<div></div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3617Plate detection algorithm2008-06-18T14:42:10Z<p>AndreaMachina: /* Results and problems */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
[[Image:plate_detection_approach_1_a.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
[[Image:plate_detection_approach_1_b.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
<br />
[[Image:plate_detection_approach_1_a_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
[[Image:plate_detection_approach_1_b_post.jpg|center|frame|On the left: image returned by the original first algorithm. On the right: the image returned by the first approach.]]<br />
<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
<br />
[[Image:Plate_detection_approach_2_a.jpg|center|frame|This image shows the amount of candidates found applying the second approach. In this case it found 209 candidates, too much.]]<br />
<br />
<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_approach_2_a.jpg&diff=3616File:Plate detection approach 2 a.jpg2008-06-18T14:39:13Z<p>AndreaMachina: </p>
<hr />
<div></div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_approach_1_b_post.jpg&diff=3615File:Plate detection approach 1 b post.jpg2008-06-18T14:35:49Z<p>AndreaMachina: </p>
<hr />
<div></div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_approach_1_a_post.jpg&diff=3614File:Plate detection approach 1 a post.jpg2008-06-18T14:35:35Z<p>AndreaMachina: </p>
<hr />
<div></div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3613Plate detection algorithm2008-06-18T14:35:03Z<p>AndreaMachina: /* Adopted solution */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
[[Image:plate_detection_approach_1_a.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
[[Image:plate_detection_approach_1_b.jpg|center|frame|On the left: candidates found by the second algorithm. On the right: the selection mask calculated.]]<br />
<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_approach_1_b.jpg&diff=3610File:Plate detection approach 1 b.jpg2008-06-18T14:29:17Z<p>AndreaMachina: </p>
<hr />
<div></div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_approach_1_a.jpg&diff=3609File:Plate detection approach 1 a.jpg2008-06-18T14:29:03Z<p>AndreaMachina: </p>
<hr />
<div></div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3608Plate detection algorithm2008-06-18T14:26:54Z<p>AndreaMachina: /* Project short description */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3606Plate detection algorithm2008-06-18T14:26:24Z<p>AndreaMachina: /* Project short description */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
[[Image:plate detection intro.jpg|center|Plate detected]]<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_intro.jpg&diff=3605File:Plate detection intro.jpg2008-06-18T14:24:11Z<p>AndreaMachina: Plate detected</p>
<hr />
<div>Plate detected</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3604Plate detection algorithm2008-06-18T14:10:20Z<p>AndreaMachina: /* The Problem */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3603Plate detection algorithm2008-06-18T14:09:51Z<p>AndreaMachina: /* Results and problems */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3602Plate detection algorithm2008-06-18T14:09:33Z<p>AndreaMachina: /* Adopted solution */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3601Plate detection algorithm2008-06-18T14:08:20Z<p>AndreaMachina: /* Documentation and useful files */</p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
* [[Media:Plate detection Andrea Machina.pdf | Project Documentation (in italian)]]<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=File:Plate_detection_Andrea_Machina.pdf&diff=3600File:Plate detection Andrea Machina.pdf2008-06-18T14:04:10Z<p>AndreaMachina: The full report</p>
<hr />
<div>The full report</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Plate_detection_algorithm&diff=3596Plate detection algorithm2008-06-18T13:56:30Z<p>AndreaMachina: </p>
<hr />
<div>== '''Part 1: project profile''' ==<br />
<br />
=== Project name ===<br />
<br />
Plate detection algorithm<br />
<br />
=== Project short description ===<br />
<br />
The aim of the project is to merge two plate detection algorithms previously developed trying to make the best of them.<br />
Different approaches were studied underlying pro and con.<br />
<br />
=== Dates ===<br />
Start date: 2008/02/01<br />
<br />
End date: 2008/05/19<br />
<br />
=== People involved ===<br />
<br />
===== Project Advisor =====<br />
<br />
[[User:AlessandroGiusti|Alessandro Giusti]]<br />
<br />
[[User:PierluigiTaddei|Pierluigi Taddei]]<br />
<br />
===== Students currently working on the project =====<br />
<br />
<br />
<br />
===== Students who worked on the project in the past =====<br />
<br />
[[User:AndreaMachina|Andrea Machina]] - as a project for courses Image Analysis and Synthesis, prof. Caglioti, and<br />
Laboratorio di Intelligenza Artificiale e Robotica, prof. [[User:PierLucaLanzi|Lanzi]]<br />
<br />
<br />
== '''Part 2: project description''' ==<br />
<br />
<br />
=== The Problem ===<br />
<br />
Dealing with plate detection problems two algorithms were developed based on different characteristics.<br />
The first one is based on the application of different masks to the original image. Each mask puts in evidence a characteristic of a plate: black stripes on white background, the rectangular shape etc. In the end a procedure merges all the images previously calculated achieving the result image where the plate is put in evidence.<br />
The second algorithm is based on the research of vertical and horizontal lines looking for the ones that, intersecting with the others, can describe the shape of a plate maintaining its proportions.<br />
The first algorithm is quite heavy but accurate, the second one is faster but not robust.<br />
The aim of this project is to merge these algorithms trying to make the best of them.<br />
<br />
=== Preliminary studies ===<br />
<br />
<br />
<br />
<br />
<br />
=== Adopted solution ===<br />
<br />
This project describes four possible solutions.<br />
1) The second algorithm (the faster one) is applied to the original image performing a first selection of region of interest based on geometrical characteristics. Each candidate found with this algorithm has been used to build a new binary mask (a selection mask), with the dimensions of the original image, where, if a pixel (x, y) is part of a candidate the corresponding element of the mask (x, y) is put to 1, 0 otherwise. The first algorithm is then applied to the original image but, during the merging mask is considered also the new selection mask. In this way we can reduce the amount of false positives.<br />
2) As in the first solution the second algorithm is applied. The first algorithm is then applied not on the whole original image but on each candidate found by the second algorithm. This solution aims to reduce the first algorithm complexity applying it only on the selected candidates.<br />
3) This approach uses the second algorithm to find all the candidates. The first algorithm is then applied and the medium value is calculated on each candidate found. Then they are ordered using the value found. The first element of the list in this approach is an element with the photometric characteristics of a plate and with the best medium value calculated with the first algorithm.<br />
4) This approach is a consideration for future applications, it hasn’t been implemented in this project. It is based on the recognition of characters in the candidates. In this approach the second algorithm is applied because it’s the faster, the best solution returned is then analyzed by the OCR algorithm. If the OCR can find in that area a determined number of characters this candidate can be considered the plate we were looking for. Otherwise the first algorithm is applied looking for a best solution. The OCR is then applied on the candidate returned by the first algorithm.<br />
<br />
=== Results and problems ===<br />
<br />
The first three algorithms were implemented in this project and tested on a set of images giving satisfactory results on the whole set only using the first approach. The second algorithm gave good results only on some images.<br />
1) The first approach is the one that gave the best results, as we can see in the images the candidates in the end of the algorithm are reduced by the second algorithm and, in some images where the second algorithm returned the wrong candidate, applying the first algorithm gave the right result.<br />
2) This approach gave good results only in few cases. The idea was to reduce the area analyzed by the first algorithm but the second algorithm applied on some images returned a lot of candidates, the sum of the pixels of the whole candidates found was bigger than the number of pixels in the original image.<br />
3) This solution didn’t gave good results because it is heavy influenced by noises. Small white areas in candidates can in fact change the order of the elements in the list influencing the medium value calculated.<br />
<br />
=== Documentation and useful files ===<br />
<br />
<br />
<br />
=== Useful link ===</div>AndreaMachinahttps://airwiki.elet.polimi.it/index.php?title=Projects&diff=3595Projects2008-06-18T13:52:00Z<p>AndreaMachina: /* Computer Vision and Image Analysis */</p>
<hr />
<div>''This page is a repository of links to the pages describing the '''projects''' we are currently working on at AIRLab. <br />
See the list of our finished projects on the [[Finished Projects]] page.''<br />
<br />
== Ongoing projects ==<br />
''by research area (areas are defined in the [[Main Page]]); for each project a name and a link to its AIRWiki page is given''<br />
<br />
==== [[Agents, Multiagent Systems, Agencies]] ====<br />
----<br />
<br />
* [[Multiagent cooperation|Multiagent cooperating system]]<br />
<br />
* [[Planning in Ambient Intelligence scenarios| Planning in Ambient Intelligence scenarios]]<br />
<br />
==== [[BioSignal Analysis]] ====<br />
----<br />
====== [[Affective Computing]] ======<br />
<br />
* [[Relatioship between Cognition and Emotion in Rehabilitation Robotics]]<br />
* [[Driving companions]]<br />
* [[Emotion from Interaction]]<br />
* [[Affective Devices]]<br />
<br />
====== [[Brain-Computer Interface]] ======<br />
<br />
* [[Online P300 and ErrP recognition with BCI2000]]<br />
* [[BCI based on Motor Imagery]]<br />
* [[Graphical user interface for an autonomous wheelchair]]<br />
* [[Mu and beta rhythm-based BCI]]<br />
<br />
====== [[Automatic Detection Of Sleep Stages]] ======<br />
<br />
* [[Sleep Staging with HMM]]<br />
<br />
====== [[Analysis of the Olfactory Signal]] ======<br />
<br />
* [[Lung Cancer Detection by an Electronic Nose]]<br />
* [[HE-KNOWS - An electronic nose]]<br />
<br />
==== [[Computer Vision and Image Analysis]] ====<br />
----<br />
<br />
* [[Automated extraction of laser streaks and range profiles]]<br />
<br />
* [[Data collection for mutual calibration|Data collection for laser-rangefinder and camera calibration]]<br />
<br />
* [[Image retargeting by k-seam removal]]<br />
<br />
* [[Particle filter for object tracking]]<br />
<br />
* [[Template based paper like reconstruction when the edges are straight]]<br />
<br />
* [[Wii Remote headtracking and active projector]]<br />
<br />
* [[Vision module for the Milan Robocup Team]]<br />
<br />
* [[Long Exposure Images for Resource-constrained video surveillance]]<br />
<br />
* [[NonPhotorealistic rendering of speed lines]].<br />
<br />
* [[Restoration of blurred objects using cues from the alpha matte]]<br />
<br />
* [[Analyzing Traffic Speed From a Single Night Image - Light Streaks Detection]]<br />
<br />
* [[Plate detection algorithm]]<br />
<br />
==== [[Machine Learning]] ====<br />
----<br />
* [[Adaptive Reinforcement Learning Multiagent Coordination in Real-Time Computer Games|Adaptive Reinforcement Learning Multiagent Coordination in Real-Time Computer Games]]<br />
<br />
* [[B-Smart Behaviour Sequence Modeler and Recognition tool|B-Smart Behaviour Sequence Modeler and Recognition tool]]<br />
<br />
==== [[Ontologies and Semantic Web]] ====<br />
----<br />
* [[JOFS|JOFS, Java Owl File Storage]]<br />
* [[FolksOnt|FolksOnt]]<br />
* [[Extending a wiki with semantic templates]]<br />
* [[GeoOntology|Geographic ontology for a semantic wiki]]<br />
<br />
==== [[Philosophy of Artificial Intelligence]] ====<br />
----<br />
==== [[Robotics]] ====<br />
----<br />
* [[LURCH - The autonomous wheelchair]]<br />
<br />
* [[Rawseeds|RAWSEEDS]]<br />
<br />
* [[Balancing robots: Tilty, TiltOne]]<br />
<br />
* [[ROBOWII ]]<br />
<br />
* [[PoliManus]]<br />
<br />
* [[ZOIDBERG - An autonomous bio-inspired RoboFish]]<br />
<br />
* [[Styx The 6 Whegs Robot]]<br />
<br />
* [[PolyGlove: a body-based haptic interface]]<br />
<br />
* [[ULISSE]]<br />
<br />
==== [[Soft Computing]] ====<br />
----<br />
<br />
<br />
<br />
== Note for students ==<br />
<br />
If you are a student and there isn't a '''page describing your project''', this is because YOU have the task of creating it and populating it with (meaningful) content. If you are a student and there IS a page describing your project, you have the task to complete that page with (useful and comprehensive) information about your own contribution to the project. Be aware that the quality of your work (or lack of it) on the AIRWiki will be evaluated by the Teachers and will influence your grades.<br />
<br />
Instructions to add a new project or to add content to an existing project page are available at [[Projects - HOWTO]].</div>AndreaMachina