|
72 | 72 | {
|
73 | 73 | "cell_type": "code",
|
74 | 74 | "execution_count": 2,
|
75 |
| - "metadata": {}, |
| 75 | + "metadata": { |
| 76 | + "collapsed": true |
| 77 | + }, |
76 | 78 | "outputs": [],
|
77 | 79 | "source": [
|
78 | 80 | "bucket = '<your_s3_bucket_name_here>' # custom bucket name.\n",
|
|
122 | 124 | {
|
123 | 125 | "cell_type": "code",
|
124 | 126 | "execution_count": null,
|
125 |
| - "metadata": {}, |
| 127 | + "metadata": { |
| 128 | + "collapsed": true |
| 129 | + }, |
126 | 130 | "outputs": [],
|
127 | 131 | "source": [
|
128 | 132 | "import os\n",
|
|
142 | 146 | {
|
143 | 147 | "cell_type": "code",
|
144 | 148 | "execution_count": null,
|
145 |
| - "metadata": {}, |
| 149 | + "metadata": { |
| 150 | + "collapsed": true |
| 151 | + }, |
146 | 152 | "outputs": [],
|
147 | 153 | "source": [
|
148 | 154 | "%%bash\n",
|
|
161 | 167 | {
|
162 | 168 | "cell_type": "code",
|
163 | 169 | "execution_count": null,
|
164 |
| - "metadata": {}, |
| 170 | + "metadata": { |
| 171 | + "collapsed": true |
| 172 | + }, |
165 | 173 | "outputs": [],
|
166 | 174 | "source": [
|
167 | 175 | "%%bash\n",
|
|
185 | 193 | {
|
186 | 194 | "cell_type": "code",
|
187 | 195 | "execution_count": null,
|
188 |
| - "metadata": {}, |
| 196 | + "metadata": { |
| 197 | + "collapsed": true |
| 198 | + }, |
189 | 199 | "outputs": [],
|
190 | 200 | "source": [
|
191 | 201 | "import json\n",
|
|
215 | 225 | {
|
216 | 226 | "cell_type": "code",
|
217 | 227 | "execution_count": null,
|
218 |
| - "metadata": {}, |
| 228 | + "metadata": { |
| 229 | + "collapsed": true |
| 230 | + }, |
219 | 231 | "outputs": [],
|
220 | 232 | "source": [
|
221 | 233 | "def get_mapper_fn(map): \n",
|
|
236 | 248 | {
|
237 | 249 | "cell_type": "code",
|
238 | 250 | "execution_count": null,
|
239 |
| - "metadata": {}, |
| 251 | + "metadata": { |
| 252 | + "collapsed": true |
| 253 | + }, |
240 | 254 | "outputs": [],
|
241 | 255 | "source": [
|
242 | 256 | "file_name = './annotations/instances_val2017.json'\n",
|
|
284 | 298 | {
|
285 | 299 | "cell_type": "code",
|
286 | 300 | "execution_count": null,
|
287 |
| - "metadata": {}, |
| 301 | + "metadata": { |
| 302 | + "collapsed": true |
| 303 | + }, |
288 | 304 | "outputs": [],
|
289 | 305 | "source": [
|
290 | 306 | "import os\n",
|
|
304 | 320 | {
|
305 | 321 | "cell_type": "code",
|
306 | 322 | "execution_count": null,
|
307 |
| - "metadata": {}, |
| 323 | + "metadata": { |
| 324 | + "collapsed": true |
| 325 | + }, |
308 | 326 | "outputs": [],
|
309 | 327 | "source": [
|
310 | 328 | "import shutil\n",
|
|
336 | 354 | {
|
337 | 355 | "cell_type": "code",
|
338 | 356 | "execution_count": null,
|
339 |
| - "metadata": {}, |
| 357 | + "metadata": { |
| 358 | + "collapsed": true |
| 359 | + }, |
340 | 360 | "outputs": [],
|
341 | 361 | "source": [
|
342 | 362 | "%%time\n",
|
|
367 | 387 | {
|
368 | 388 | "cell_type": "code",
|
369 | 389 | "execution_count": null,
|
370 |
| - "metadata": {}, |
| 390 | + "metadata": { |
| 391 | + "collapsed": true |
| 392 | + }, |
371 | 393 | "outputs": [],
|
372 | 394 | "source": [
|
373 | 395 | "s3_output_location = 's3://{}/{}/output'.format(bucket, prefix)"
|
|
384 | 406 | {
|
385 | 407 | "cell_type": "code",
|
386 | 408 | "execution_count": null,
|
387 |
| - "metadata": {}, |
| 409 | + "metadata": { |
| 410 | + "collapsed": true |
| 411 | + }, |
388 | 412 | "outputs": [],
|
389 | 413 | "source": [
|
390 | 414 | "od_model = sagemaker.estimator.Estimator(training_image,\n",
|
|
410 | 434 | {
|
411 | 435 | "cell_type": "code",
|
412 | 436 | "execution_count": null,
|
413 |
| - "metadata": {}, |
| 437 | + "metadata": { |
| 438 | + "collapsed": true |
| 439 | + }, |
414 | 440 | "outputs": [],
|
415 | 441 | "source": [
|
416 | 442 | "od_model.set_hyperparameters(base_network='resnet-50',\n",
|
|
441 | 467 | {
|
442 | 468 | "cell_type": "code",
|
443 | 469 | "execution_count": null,
|
444 |
| - "metadata": {}, |
| 470 | + "metadata": { |
| 471 | + "collapsed": true |
| 472 | + }, |
445 | 473 | "outputs": [],
|
446 | 474 | "source": [
|
447 | 475 | "train_data = sagemaker.session.s3_input(s3_train_data, distribution='FullyReplicated', \n",
|
|
469 | 497 | {
|
470 | 498 | "cell_type": "code",
|
471 | 499 | "execution_count": null,
|
472 |
| - "metadata": {}, |
| 500 | + "metadata": { |
| 501 | + "collapsed": true |
| 502 | + }, |
473 | 503 | "outputs": [],
|
474 | 504 | "source": [
|
475 | 505 | "od_model.fit(inputs=data_channels, logs=True)"
|
|
486 | 516 | {
|
487 | 517 | "cell_type": "code",
|
488 | 518 | "execution_count": null,
|
489 |
| - "metadata": {}, |
| 519 | + "metadata": { |
| 520 | + "collapsed": true |
| 521 | + }, |
490 | 522 | "outputs": [],
|
491 | 523 | "source": [
|
492 | 524 | "object_detector = od_model.deploy(initial_instance_count = 1,\n",
|
|
504 | 536 | {
|
505 | 537 | "cell_type": "code",
|
506 | 538 | "execution_count": null,
|
507 |
| - "metadata": {}, |
| 539 | + "metadata": { |
| 540 | + "collapsed": true |
| 541 | + }, |
508 | 542 | "outputs": [],
|
509 | 543 | "source": [
|
510 | 544 | "!wget -O test.jpg https://images.pexels.com/photos/980382/pexels-photo-980382.jpeg\n",
|
|
527 | 561 | {
|
528 | 562 | "cell_type": "code",
|
529 | 563 | "execution_count": null,
|
530 |
| - "metadata": {}, |
| 564 | + "metadata": { |
| 565 | + "collapsed": true |
| 566 | + }, |
531 | 567 | "outputs": [],
|
532 | 568 | "source": [
|
533 | 569 | "import json\n",
|
|
550 | 586 | {
|
551 | 587 | "cell_type": "code",
|
552 | 588 | "execution_count": null,
|
553 |
| - "metadata": {}, |
| 589 | + "metadata": { |
| 590 | + "collapsed": true |
| 591 | + }, |
554 | 592 | "outputs": [],
|
555 | 593 | "source": [
|
556 | 594 | "def visualize_detection(img_file, dets, classes=[], thresh=0.6):\n",
|
|
613 | 651 | {
|
614 | 652 | "cell_type": "code",
|
615 | 653 | "execution_count": null,
|
616 |
| - "metadata": {}, |
| 654 | + "metadata": { |
| 655 | + "collapsed": true |
| 656 | + }, |
617 | 657 | "outputs": [],
|
618 | 658 | "source": [
|
619 | 659 | "object_categories = ['person', 'bicycle', 'car', 'motorbike', 'aeroplane', 'bus', 'train', 'truck', 'boat', \n",
|
|
630 | 670 | "threshold = 0.20\n",
|
631 | 671 | "\n",
|
632 | 672 | "# Visualize the detections.\n",
|
633 |
| - "visualize_detection(file_name, detections, object_categories, threshold)" |
| 673 | + "visualize_detection(file_name, detections['prediction'], object_categories, threshold)" |
634 | 674 | ]
|
635 | 675 | },
|
636 | 676 | {
|
|
644 | 684 | {
|
645 | 685 | "cell_type": "code",
|
646 | 686 | "execution_count": null,
|
647 |
| - "metadata": {}, |
| 687 | + "metadata": { |
| 688 | + "collapsed": true |
| 689 | + }, |
648 | 690 | "outputs": [],
|
649 | 691 | "source": [
|
650 | 692 | "sagemaker.Session().delete_endpoint(object_detector.endpoint)"
|
|
0 commit comments