I recently came across a dataset which contains polygon points for each category instead of like the four coordinates for the bounding box,How Do i go on to solve that problem using what I have learned in lesson 8 or has Jeremy Taught how to deal with this kind of things in a later lesson of the course.
Example of annotations in Json File

“objects”: [
{
“date”: “22-Mar-2018 11:59:04”,
“deleted”: 0,
“draw”: true,
“id”: 0,
“label”: “sky”,
“polygon”: [
[
0.0,
100.76923076923076
],
[
544.6153846153846,
329.2307692307692
],
[
848.4615384615385,
320.7692307692308
],
[
1076.1538461538462,
285.38461538461536
],
[
1186.923076923077,
244.6153846153846
],
[
1279.0,
92.3076923076923
],
[
1279.0,
0.0
],
[
0.0,
0.0
]
],

``````    },
{
"date": "22-Mar-2018 11:58:35",
"deleted": 0,
"draw": true,
"id": 1,
"polygon": [
[
449.2307692307692,
717.6923076923076
],
[
585.3846153846154,
324.6153846153846
],
[
640.7692307692307,
326.9230769230769
],
[
860.7692307692307,
334.6153846153846
],
[
1279.0,
401.53846153846155
],
[
1279.0,
719.0
]
],

},``````

I haven’t tried to get polygons working with the boundingbox problem from lesson 8.
But I’d approach it as either a) geometry. Find the minimum bounding box for the polygon if they are generally convex-ish, maybe a rotated box then rotate the image to ‘unrotate’ it. b) turn it into an image segmentation problem (lesson 14), then polygonise the result. You’ll need to learn a bit about opencv/numpy to do that but it’s straightforward.

I just skipped to lesson 14 from lesson 8 to solve this problem using the image Segmentation approach.Can anyone help me with converting the CarvanaUnet Notebook from Binary Classes to multi class Segmentation.

How many classes do you have? If just a handful it can be best to train a set of binary segmentation models, then use probabilities to handle overlaps. Look at the kaggle dstl challenge for example. As in that comp, one advantage is that for minor classes (eg water) a pure segmentation model may not be appropriate, or you may want to preprocess images differently for those classes (eg diffferent channels).

I have 27 classes