Computer Vision for Embedded Systems

Brought by: edX

Overview

This course provides an overview of running computer vision (OpenCV and PyTorch) on embedded systems (such as Raspberry Pi and Jetson). The course emphasizes the resource constraints imposed by embedded systems and examines methods (such as quantization and pruning) to reduce resource requirements. This course will have programming assignments and projects proposed by the students.

Required texts or technologies:

This course does not have a required text. The course will read recently published papers. Students will use Google Colab for programming assignments.

Syllabus

Lecture topics:

  • Overview, image data formats, OpenCV
  • Edge detection and segmentation
  • Applications of computer vision in embedded systems
  • Datasets, bias, privacy, competitions
  • Machine learning and PyTorch
  • Performance and resources (time, memory, accuracy)
  • Object detection and motion tracking
  • Data annotation and generation
  • Quantization
  • Pruning and network architecture search
  • Tree modular networks
  • Vision in context, MobileNet
  • Real-time scheduling

Taught by

Yung-Hsiang Lu

Computer Vision for Embedded Systems
Go to course

Computer Vision for Embedded Systems

Brought by: edX

  • edX
  • Free
  • English
  • Certificate Not Available
  • Certain days
  • advanced
  • English
8.1.2PHP Version991msRequest Duration2MBMemory UsageGET en/courses/{slug}Route
    • Booting (625ms)
    • Application (363ms)
    • 1 x Booting (63.1%)
      625.00ms
      1 x Application (36.65%)
      362.99ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET en/courses/{slug}
      middleware
      web, localize:en
      controller
      App\Http\Controllers\CourseController@show
      as
      en.courses.show
      namespace
      prefix
      /en
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed10.4ms
      • select * from `courses` where `slug_en` = 'computer-vision-for-embedded-systems' limit 1
        8.44ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. computer-vision-for-embedded-systems
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-06-20 14:07:33' where `id` = 753
        780μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-06-20 14:07:33
        • 1. 753
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (16)
        250μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        220μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (80) and `institutions`.`deleted_at` is null
        230μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (1) and `providers`.`deleted_at` is null
        220μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 747 limit 1
        260μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 747
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        qLjjJdxOi3vQV3uapLjgrGGdHox9bsrVHcgaUXBB
        locale
        en
        _previous
        array:1 [ "url" => "https://www.corspedia.com/en/courses/computer-vision-for-embedded-systems" ]
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /en/courses/computer-vision-for-embedded-systems
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.253" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.253" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "952bd546e896ead8-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.253" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.253" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "952bd546e896ead8-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "33880" "REMOTE_ADDR" => "172.70.126.26" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/en/courses/computer-vision-for-embedded-systems" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1750428453.2029 "REQUEST_TIME" => 1750428453 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Fri, 20 Jun 2025 14:07:34 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imo0MGtnTFpNTGdvTFl3N09SaFE4aFE9PSIsInZhbHVlIjoiOTRnWHpHUHZ6cTk5YTBmKzVQRkxKMWVxUHkxeE1Yc1o5WTVndTZLNGJjOTNNVGd0TVloa2d2emIwUmU1aXdUUGdjSng5Z2VyTVJvR3ZNNnV2SDNTTXZVU2VQc2hyNmRoNXNMSDA5cTZNU0lWcXN1OHQzWDlwUnNCc0VVa0dTTEkiLCJtYWMiOiIxZTNiY2JkNjk0OTIyNzhmMTgyM2Y1NjMzNmQ3MTQzN2UyMWE5ZWYzMjM4ZWE3ZjEwNWQ5YWFjOGQzYzRjZjc4IiwidGFnIjoiIn0%3D; expires=Fri, 20 Jun 2025 16:07:34 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6Imo0MGtnTFpNTGdvTFl3N09SaFE4aFE9PSIsInZhbHVlIjoiOTRnWHpHUHZ6cTk5YTBmKzVQRkxKMWVxUHkxeE1Yc1o5WTVndTZLNGJjOTNNVGd0TVloa2d2emIwUmU1aXdUUGdjSng5Z" 1 => "laravel_session=eyJpdiI6IlhUNElLWmcybkh6VVNkTm1xczhZOEE9PSIsInZhbHVlIjoiMUU5VTJaaEJNeE4rRFNpUzBvM0FWZXNmWjZ1ejlZamR3V3NIYWVOb1dOR2diWHlSUTN6aXQ3a0NiVy9kVnBhUlNZVnNmaUhoNHdIK2JIV0g4K213dnBxeXozR2tQeVBTb1d2QzBMQXhjemNXUXhZTVhiNld2L1hsV294Skc5Y3oiLCJtYWMiOiJlMDdjMGUyZmQ4MmQ2MDMyODliNjliYmY4ZGZhNGFlZWVkNmZlMjhlNzE0M2Q1MTBkYWM5OGQxN2E1OTIyNmEwIiwidGFnIjoiIn0%3D; expires=Fri, 20 Jun 2025 16:07:34 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IlhUNElLWmcybkh6VVNkTm1xczhZOEE9PSIsInZhbHVlIjoiMUU5VTJaaEJNeE4rRFNpUzBvM0FWZXNmWjZ1ejlZamR3V3NIYWVOb1dOR2diWHlSUTN6aXQ3a0NiVy9kVnBhUlNZ" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imo0MGtnTFpNTGdvTFl3N09SaFE4aFE9PSIsInZhbHVlIjoiOTRnWHpHUHZ6cTk5YTBmKzVQRkxKMWVxUHkxeE1Yc1o5WTVndTZLNGJjOTNNVGd0TVloa2d2emIwUmU1aXdUUGdjSng5Z2VyTVJvR3ZNNnV2SDNTTXZVU2VQc2hyNmRoNXNMSDA5cTZNU0lWcXN1OHQzWDlwUnNCc0VVa0dTTEkiLCJtYWMiOiIxZTNiY2JkNjk0OTIyNzhmMTgyM2Y1NjMzNmQ3MTQzN2UyMWE5ZWYzMjM4ZWE3ZjEwNWQ5YWFjOGQzYzRjZjc4IiwidGFnIjoiIn0%3D; expires=Fri, 20-Jun-2025 16:07:34 GMT; path=/XSRF-TOKEN=eyJpdiI6Imo0MGtnTFpNTGdvTFl3N09SaFE4aFE9PSIsInZhbHVlIjoiOTRnWHpHUHZ6cTk5YTBmKzVQRkxKMWVxUHkxeE1Yc1o5WTVndTZLNGJjOTNNVGd0TVloa2d2emIwUmU1aXdUUGdjSng5Z" 1 => "laravel_session=eyJpdiI6IlhUNElLWmcybkh6VVNkTm1xczhZOEE9PSIsInZhbHVlIjoiMUU5VTJaaEJNeE4rRFNpUzBvM0FWZXNmWjZ1ejlZamR3V3NIYWVOb1dOR2diWHlSUTN6aXQ3a0NiVy9kVnBhUlNZVnNmaUhoNHdIK2JIV0g4K213dnBxeXozR2tQeVBTb1d2QzBMQXhjemNXUXhZTVhiNld2L1hsV294Skc5Y3oiLCJtYWMiOiJlMDdjMGUyZmQ4MmQ2MDMyODliNjliYmY4ZGZhNGFlZWVkNmZlMjhlNzE0M2Q1MTBkYWM5OGQxN2E1OTIyNmEwIiwidGFnIjoiIn0%3D; expires=Fri, 20-Jun-2025 16:07:34 GMT; path=/; httponlylaravel_session=eyJpdiI6IlhUNElLWmcybkh6VVNkTm1xczhZOEE9PSIsInZhbHVlIjoiMUU5VTJaaEJNeE4rRFNpUzBvM0FWZXNmWjZ1ejlZamR3V3NIYWVOb1dOR2diWHlSUTN6aXQ3a0NiVy9kVnBhUlNZ" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "qLjjJdxOi3vQV3uapLjgrGGdHox9bsrVHcgaUXBB" "locale" => "en" "_previous" => array:1 [ "url" => "https://www.corspedia.com/en/courses/computer-vision-for-embedded-systems" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]