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 Version1.12sRequest Duration2MBMemory UsageGET en/courses/{slug}Route
    • Booting (756ms)
    • Application (365ms)
    • 1 x Booting (67.21%)
      755.60ms
      1 x Application (32.51%)
      365.47ms
      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.81ms
      • select * from `courses` where `slug_en` = 'computer-vision-for-embedded-systems' limit 1
        8.85ms/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-07-09 14:12:44' where `id` = 753
        800μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-07-09 14:12:44
        • 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)
        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 `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        190μ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
        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 * from `providers` where `providers`.`id` in (1) and `providers`.`deleted_at` is null
        210μ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
        280μ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
        TRyOlYstpGWdCGN9s3lR4aWts41N3kg9DtMbjRWk
        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.227" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.227" ] "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 => "95c86afe0955fa10-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.227" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.227" "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" => "95c86afe0955fa10-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" => "22804" "REMOTE_ADDR" => "172.70.131.193" "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" => 1752070364.098 "REQUEST_TIME" => 1752070364 ]
        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 => "Wed, 09 Jul 2025 14:12:45 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InE4c1paMzdLZzl6TVlVV25qbFNhTVE9PSIsInZhbHVlIjoiTG4yTXdEWmkzOTRSVTVWL1NLR24wWUZBem5TanVvYXcxRGpranVpUDc1bVRnMmF3TzU2bkhsMEtTdmpIc3A2Qld3Q29semVxcW1kem91UGNsOWphL0JiM1pycU9NakdVSW45bk84NXF5UHFyMnBrVTB3ZWJFZ1JxcUhwZ0ttWmoiLCJtYWMiOiI2YzExNzFhYzc3NmUxYTM3ODk3NjM0YzYyMzU5OTk2NTQ3MGQwYmIzZGJjMzU3NTYxMDdhYzdkZTQ2ZmUzODhjIiwidGFnIjoiIn0%3D; expires=Wed, 09 Jul 2025 16:12:45 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6InE4c1paMzdLZzl6TVlVV25qbFNhTVE9PSIsInZhbHVlIjoiTG4yTXdEWmkzOTRSVTVWL1NLR24wWUZBem5TanVvYXcxRGpranVpUDc1bVRnMmF3TzU2bkhsMEtTdmpIc3A2Qld3Q29se" 1 => "laravel_session=eyJpdiI6IlR6ejc0NE5JOVhRLzJ4QUE1WTNFeXc9PSIsInZhbHVlIjoiUDAxN3BtNWRhWEVYdm55S0RrSHowU2c0R0VUKzJpNHJjQm9qdHNUYk1XRlRNWnd2SW1iMHZMcXNtMnREVkpaSUJURCtaSUM2Rlpla2hhaE5kMG5sUkFIVjdZTjRIQjB3QjVFWEMrOHYzNHBhNklBY1E5WSs3QXg5K0lOWjFOaVUiLCJtYWMiOiJiNTFiNjk4ZTVmZjBiYTliODE5YWE3NGFjNDc5OWE1YzJmYWQ0NTk0ODA4OWNhOTZkOTE4YTllNzVmYjdlYjQzIiwidGFnIjoiIn0%3D; expires=Wed, 09 Jul 2025 16:12:45 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IlR6ejc0NE5JOVhRLzJ4QUE1WTNFeXc9PSIsInZhbHVlIjoiUDAxN3BtNWRhWEVYdm55S0RrSHowU2c0R0VUKzJpNHJjQm9qdHNUYk1XRlRNWnd2SW1iMHZMcXNtMnREVkpaSUJU" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6InE4c1paMzdLZzl6TVlVV25qbFNhTVE9PSIsInZhbHVlIjoiTG4yTXdEWmkzOTRSVTVWL1NLR24wWUZBem5TanVvYXcxRGpranVpUDc1bVRnMmF3TzU2bkhsMEtTdmpIc3A2Qld3Q29semVxcW1kem91UGNsOWphL0JiM1pycU9NakdVSW45bk84NXF5UHFyMnBrVTB3ZWJFZ1JxcUhwZ0ttWmoiLCJtYWMiOiI2YzExNzFhYzc3NmUxYTM3ODk3NjM0YzYyMzU5OTk2NTQ3MGQwYmIzZGJjMzU3NTYxMDdhYzdkZTQ2ZmUzODhjIiwidGFnIjoiIn0%3D; expires=Wed, 09-Jul-2025 16:12:45 GMT; path=/XSRF-TOKEN=eyJpdiI6InE4c1paMzdLZzl6TVlVV25qbFNhTVE9PSIsInZhbHVlIjoiTG4yTXdEWmkzOTRSVTVWL1NLR24wWUZBem5TanVvYXcxRGpranVpUDc1bVRnMmF3TzU2bkhsMEtTdmpIc3A2Qld3Q29se" 1 => "laravel_session=eyJpdiI6IlR6ejc0NE5JOVhRLzJ4QUE1WTNFeXc9PSIsInZhbHVlIjoiUDAxN3BtNWRhWEVYdm55S0RrSHowU2c0R0VUKzJpNHJjQm9qdHNUYk1XRlRNWnd2SW1iMHZMcXNtMnREVkpaSUJURCtaSUM2Rlpla2hhaE5kMG5sUkFIVjdZTjRIQjB3QjVFWEMrOHYzNHBhNklBY1E5WSs3QXg5K0lOWjFOaVUiLCJtYWMiOiJiNTFiNjk4ZTVmZjBiYTliODE5YWE3NGFjNDc5OWE1YzJmYWQ0NTk0ODA4OWNhOTZkOTE4YTllNzVmYjdlYjQzIiwidGFnIjoiIn0%3D; expires=Wed, 09-Jul-2025 16:12:45 GMT; path=/; httponlylaravel_session=eyJpdiI6IlR6ejc0NE5JOVhRLzJ4QUE1WTNFeXc9PSIsInZhbHVlIjoiUDAxN3BtNWRhWEVYdm55S0RrSHowU2c0R0VUKzJpNHJjQm9qdHNUYk1XRlRNWnd2SW1iMHZMcXNtMnREVkpaSUJU" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "TRyOlYstpGWdCGN9s3lR4aWts41N3kg9DtMbjRWk" "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" => [] ]