Python OpenCV Augmented Reality

بواسطة: Coursera

Overview

Note: The rhyme platform currently does not support webcams, so this is not a live project.

This guided project is about augmented reality using Python OpenCV. It comes under the computer vision domain.

While you are watching me code, you will get a cloud desktop with all the required software pre-installed. This will allow you to code along with me. After all, we learn best with active, hands-on learning.

Special Feature:

1. Identifying AugmentedReality uco codes.
2. Obtaining homography matrix.
3. Applying Perspective wrap.

Note: This project works best for learners who are based in the North America region. We’re currently working on providing the same experience in other regions.

Taught by

Vinita Silaparasetty

Python OpenCV Augmented Reality
الذهاب الي الدورة

Python OpenCV Augmented Reality

بواسطة: Coursera

  • Coursera
  • مدفوعة
  • الإنجليزية
  • متاح شهادة
  • أيام محددة
  • الجميع
  • N/A
8.1.2PHP Version854msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (541ms)
    • Application (311ms)
    • 1 x Booting (63.37%)
      541.19ms
      1 x Application (36.38%)
      310.71ms
      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 ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed11.27ms
      • select * from `courses` where `slug_ar` = 'python-opencv-augmented-reality' limit 1
        9.33ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. python-opencv-augmented-reality
        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-12 13:55:02' where `id` = 3533
        770μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-07-12 13:55:02
        • 1. 3533
        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 (115)
        270μ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)
        180μ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 (106) and `institutions`.`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 `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        200μ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` = 3524 limit 1
        300μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 3524
        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
        cEReAlCO3FAwr1xsbA1g2j5P6zzsRkEDqtv2OC8S
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/python...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/python-opencv-augmented-reality
        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.144" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.144" ] "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 => "95e1092fee0e39f8-YYZ" ] "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.144" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.144" "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" => "95e1092fee0e39f8-YYZ" "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" => "15934" "REMOTE_ADDR" => "172.69.214.243" "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" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/python-opencv-augmented-reality" "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" => 1752328502.0081 "REQUEST_TIME" => 1752328502 ]
        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 => "Sat, 12 Jul 2025 13:55:02 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjR1MkVHRURGRHQzN2t5a2g3RHFnbmc9PSIsInZhbHVlIjoiZVRIYVNLUFU1eENUYjYzK3NkVDFEalJzQ0dJd1BBZ3grdndtQ3ZMUWY3QzZoTG1QY0RHdWRGMlRScE9TRzVwV3lmdDFQTytZS1UydWJpK25pM0N4U3ZYbFM0aU5GTitHSnhYVVowdENEZEV4UkJseks4dmdPUzkzcUZUMDNWSEgiLCJtYWMiOiI5NjRmMzFhNTYzMjkxZjhkYzA5MzE2NTM4ZDE4OGNiZTk5NjM1OTBkOTAzMWYxNGM1MDdmZGQ0NDY1MzgzMzdkIiwidGFnIjoiIn0%3D; expires=Sat, 12 Jul 2025 15:55:02 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IjR1MkVHRURGRHQzN2t5a2g3RHFnbmc9PSIsInZhbHVlIjoiZVRIYVNLUFU1eENUYjYzK3NkVDFEalJzQ0dJd1BBZ3grdndtQ3ZMUWY3QzZoTG1QY0RHdWRGMlRScE9TRzVwV3lmdDFQT" 1 => "laravel_session=eyJpdiI6IlJVK1JMTFQwd3ppc0NaUkNOcnUzSVE9PSIsInZhbHVlIjoiRXBGYy9kSFFHUWpWSVBXaHlOZmJOKy9YYmxESzZKWmQ2ZDc0bmJhUjFnZ0xNbmxtTDZqTEthRVJ3UzdtNEdOcjRlSm4ycEZ3WlhlYytVek5NOGxPMWxRdkk4MStqcmpsc1hLT09FSnpUVGU2SWh1MlNwU3FEc3VtYUFaUkx5djIiLCJtYWMiOiJhYTFhMGY4MzRkYmE3NGIxMTI2ZmRhMDM2NmJjNDU5MzcxMjU2Y2JjYjVhMDBkNmMzZjU3OWU4NDBmMWM2OThkIiwidGFnIjoiIn0%3D; expires=Sat, 12 Jul 2025 15:55:02 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IlJVK1JMTFQwd3ppc0NaUkNOcnUzSVE9PSIsInZhbHVlIjoiRXBGYy9kSFFHUWpWSVBXaHlOZmJOKy9YYmxESzZKWmQ2ZDc0bmJhUjFnZ0xNbmxtTDZqTEthRVJ3UzdtNEdOcjRl" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjR1MkVHRURGRHQzN2t5a2g3RHFnbmc9PSIsInZhbHVlIjoiZVRIYVNLUFU1eENUYjYzK3NkVDFEalJzQ0dJd1BBZ3grdndtQ3ZMUWY3QzZoTG1QY0RHdWRGMlRScE9TRzVwV3lmdDFQTytZS1UydWJpK25pM0N4U3ZYbFM0aU5GTitHSnhYVVowdENEZEV4UkJseks4dmdPUzkzcUZUMDNWSEgiLCJtYWMiOiI5NjRmMzFhNTYzMjkxZjhkYzA5MzE2NTM4ZDE4OGNiZTk5NjM1OTBkOTAzMWYxNGM1MDdmZGQ0NDY1MzgzMzdkIiwidGFnIjoiIn0%3D; expires=Sat, 12-Jul-2025 15:55:02 GMT; path=/XSRF-TOKEN=eyJpdiI6IjR1MkVHRURGRHQzN2t5a2g3RHFnbmc9PSIsInZhbHVlIjoiZVRIYVNLUFU1eENUYjYzK3NkVDFEalJzQ0dJd1BBZ3grdndtQ3ZMUWY3QzZoTG1QY0RHdWRGMlRScE9TRzVwV3lmdDFQT" 1 => "laravel_session=eyJpdiI6IlJVK1JMTFQwd3ppc0NaUkNOcnUzSVE9PSIsInZhbHVlIjoiRXBGYy9kSFFHUWpWSVBXaHlOZmJOKy9YYmxESzZKWmQ2ZDc0bmJhUjFnZ0xNbmxtTDZqTEthRVJ3UzdtNEdOcjRlSm4ycEZ3WlhlYytVek5NOGxPMWxRdkk4MStqcmpsc1hLT09FSnpUVGU2SWh1MlNwU3FEc3VtYUFaUkx5djIiLCJtYWMiOiJhYTFhMGY4MzRkYmE3NGIxMTI2ZmRhMDM2NmJjNDU5MzcxMjU2Y2JjYjVhMDBkNmMzZjU3OWU4NDBmMWM2OThkIiwidGFnIjoiIn0%3D; expires=Sat, 12-Jul-2025 15:55:02 GMT; path=/; httponlylaravel_session=eyJpdiI6IlJVK1JMTFQwd3ppc0NaUkNOcnUzSVE9PSIsInZhbHVlIjoiRXBGYy9kSFFHUWpWSVBXaHlOZmJOKy9YYmxESzZKWmQ2ZDc0bmJhUjFnZ0xNbmxtTDZqTEthRVJ3UzdtNEdOcjRl" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "cEReAlCO3FAwr1xsbA1g2j5P6zzsRkEDqtv2OC8S" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/python-opencv-augmented-reality" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]