1
00:00:00,300 --> 00:00:06,510
Hi, welcome back to the course in this lesson, we'll take a look at creating an object detector using

2
00:00:06,510 --> 00:00:08,640
drone maritime shot footage.

3
00:00:08,820 --> 00:00:13,710
This is taking pictures of boats near the coast and we're going to train.

4
00:00:14,610 --> 00:00:15,490
Let's see the model.

5
00:00:15,510 --> 00:00:21,810
It's the RCN and the faster our CNN model using the TensorFlow object detection API.

6
00:00:22,470 --> 00:00:30,780
So open that book 48 here and let's get started so you can take a look closely at what the actual images

7
00:00:30,780 --> 00:00:32,220
look like and the results you can see.

8
00:00:32,220 --> 00:00:34,890
It's labelled dark, labeled bought accordingly.

9
00:00:34,980 --> 00:00:38,280
Although this is probably not a boat, this is probably just as a dock.

10
00:00:38,730 --> 00:00:46,920
This is an example of the detection on a sample image, and it gets it a bit wrong, at least according

11
00:00:46,920 --> 00:00:49,140
to me, because I don't think this is a boat here.

12
00:00:49,440 --> 00:00:50,130
I could be wrong.

13
00:00:51,030 --> 00:00:55,110
So nevertheless, this is again another notable flaw notebook.

14
00:00:55,710 --> 00:00:56,690
So let's begin.

15
00:00:56,700 --> 00:00:58,770
So firstly, let's run this notebook.

16
00:00:59,400 --> 00:01:06,240
We have to install TensorFlow Vision one, 1.1 five because apparently it has some incompatibilities

17
00:01:06,240 --> 00:01:09,810
with the new TensorFlow version two point seven we believe we're on.

18
00:01:10,530 --> 00:01:14,760
However, the major fixed on my note, I know some of it works with efficient detect.

19
00:01:14,760 --> 00:01:19,080
So maybe this it's been fixed by our standards as well.

20
00:01:20,520 --> 00:01:23,490
So we'll just wait for that to finish.

21
00:01:32,680 --> 00:01:36,160
OK, so it's finished, and it took just under a minute.

22
00:01:36,430 --> 00:01:37,680
Don't worry about these errors.

23
00:01:37,690 --> 00:01:39,040
Everything will still work fine.

24
00:01:39,730 --> 00:01:43,090
So no, just set up some config parameters here.

25
00:01:43,100 --> 00:01:47,740
We're going to be training a faster our CNN on the inception of Vision two models.

26
00:01:47,740 --> 00:01:49,240
Let's let that model here.

27
00:01:49,330 --> 00:01:52,690
So let's do this now.

28
00:01:52,690 --> 00:01:56,710
Let's clone the repo and set some parts there.

29
00:01:57,790 --> 00:02:02,230
Now we have to install some of the required packages to support this framework.

30
00:02:03,790 --> 00:02:06,760
A lot of these, I know, do seem a bit difficult to setup.

31
00:02:06,880 --> 00:02:12,520
However, you don't always I mean, you have to do it every time you run a call up notebook, unfortunately.

32
00:02:13,090 --> 00:02:17,800
However, if you were to do this in the local system, it's a one time thing and then you can just drop

33
00:02:17,800 --> 00:02:24,910
in your data sets and run Python Tree the UI and you can you can manage with that.

34
00:02:25,390 --> 00:02:27,970
Anyway, let's wait for this to finish install.

35
00:02:35,580 --> 00:02:36,870
OK, so we're finished now.

36
00:02:37,500 --> 00:02:43,650
So now we can prepare our ETF record files here, so let's just navigate into a directory, unzip our

37
00:02:43,650 --> 00:02:46,980
dataset and download a nonsupport dataset, I should say.

38
00:02:47,670 --> 00:02:48,090
There we go.

39
00:02:48,090 --> 00:02:48,810
That's finished.

40
00:02:49,170 --> 00:02:51,130
Let's take a look at the list of files there.

41
00:02:51,150 --> 00:02:57,750
So yet still, check out the tree in the directory and stick with the test directory and let's set the

42
00:02:57,750 --> 00:02:58,410
parts.

43
00:02:59,040 --> 00:03:01,110
Now we done a little base model.

44
00:03:01,110 --> 00:03:05,790
That's a pre-trained model, and now we just do some checks.

45
00:03:09,060 --> 00:03:10,160
Everything is running.

46
00:03:10,920 --> 00:03:18,210
Now we can start configuring the training pipeline, so let's run these blocks of crude and take a look

47
00:03:18,210 --> 00:03:19,550
at our pipeline as well.

48
00:03:19,570 --> 00:03:24,400
This is like a configuration or training schedule or scheme scheme.

49
00:03:24,420 --> 00:03:31,170
I think if you want to think about it like that and know we can almost begin training this have to run

50
00:03:31,440 --> 00:03:32,220
all intensive water.

51
00:03:32,280 --> 00:03:34,980
You don't have to do this, so we can skip that for now.

52
00:03:35,760 --> 00:03:38,780
And now we can just run the model.

53
00:03:38,790 --> 00:03:43,800
Actually, let's install the pensively just because I know it does work, and it's quite good to visualize

54
00:03:43,800 --> 00:03:45,150
the results while we're training.

55
00:03:47,020 --> 00:03:49,650
Install this there.

56
00:03:50,580 --> 00:03:53,760
And now finally, we are ready to train this model.

57
00:03:53,760 --> 00:03:54,890
So let's wait.

58
00:03:54,930 --> 00:03:57,000
And there we go so we can start training now.

59
00:03:58,170 --> 00:04:02,490
So let's take a look at the output so you can double check that you're getting everything I'm getting

60
00:04:02,490 --> 00:04:02,790
here.

61
00:04:05,430 --> 00:04:07,050
A lot of warnings, lots of hair.

62
00:04:15,300 --> 00:04:16,090
OK, there we go.

63
00:04:16,110 --> 00:04:21,440
So it's finally starting to train, you can see it's OK, but the loss in and disturbed equals zero.

64
00:04:21,450 --> 00:04:23,850
It's the first one so we can see it.

65
00:04:24,300 --> 00:04:25,110
It'll take a while.

66
00:04:25,320 --> 00:04:30,300
I don't know how long this one takes a train, but generally will take maybe one or two, maybe maybe

67
00:04:30,300 --> 00:04:31,020
more training.

68
00:04:31,560 --> 00:04:35,580
Actually, this is a small dataset, so it shouldn't take more than an hour to train this model.

69
00:04:36,810 --> 00:04:38,340
So anyway, why latrines?

70
00:04:38,550 --> 00:04:42,420
We can take a look and see how the inference looks with this model.

71
00:04:43,050 --> 00:04:47,490
So let's see if we can get a final output somewhere here.

72
00:04:49,680 --> 00:04:50,580
Yep, there we go.

73
00:04:50,700 --> 00:04:57,570
So these are some final image outputs of the detections from a model you can see it's not that good,

74
00:04:57,840 --> 00:04:59,130
although some of them are right.

75
00:04:59,820 --> 00:05:01,110
It's not always this.

76
00:05:01,190 --> 00:05:08,550
It is a key category is that it's different categories, so you can see it that maybe the analysis needs

77
00:05:08,550 --> 00:05:15,990
to be set at a higher threshold here, but generally consists of looking fairly well, just not too

78
00:05:15,990 --> 00:05:16,230
low.

79
00:05:17,100 --> 00:05:25,320
So that's it for this lesson in the next lesson will be training a chest piece detector using a PyTorch

80
00:05:25,320 --> 00:05:27,540
implementation of your low inflation tree.

81
00:05:28,230 --> 00:05:32,160
So stay tuned for that lesson, and I'll tell you why you will want to train sometime.

82
00:05:32,310 --> 00:05:34,860
All the models such as your vision tree as well.

83
00:05:35,340 --> 00:05:35,760
Thank you.

84
00:05:36,150 --> 00:05:36,450
But.
