

{"id":136215,"date":"2024-04-18T19:31:53","date_gmt":"2024-04-18T14:01:53","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=136215"},"modified":"2024-04-18T19:31:53","modified_gmt":"2024-04-18T14:01:53","slug":"machine-learning-chrome-dino-game","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/","title":{"rendered":"Machine Learning Project &#8211; Chrome Dino Game"},"content":{"rendered":"<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">#Import the necessary modules\r\nimport pyautogui\r\nimport numpy as np\r\nimport cv2\r\nimport math\r\n\r\n\r\n# Initialize the video capture\r\nvideo_capture = cv2.VideoCapture(0)\r\n\r\n\r\nwhile video_capture.isOpened():\r\n\r\n\r\n# Captures the frames of the camera\r\n   ret, frame = video_capture.read()\r\n\r\n\r\n# Get hand data from the rectangular window\r\n   cv2.rectangle(frame, (100, 100), (300, 300), (0, 255, 0), 0)\r\n   cv2.crop_image = frame[100:300, 100:300]\r\n\r\n\r\n# Appling Blur\r\n   blurred_image = cv2.GaussianBlur(cv2.crop_image, (3, 3), 0)\r\n\r\n\r\n# Converting color-space from BGR to HSV\r\n   hsv_image = cv2.cvtColor(blurred_image, cv2.COLOR_BGR2HSV)\r\n\r\n\r\n# It creates the binary image, where white will be our skin color and others will be black\r\n   fg_mask = cv2.inRange(hsv_image, np.array([2, 0, 0]), np.array([20, 255, 255]))\r\n\r\n\r\n# Kernel for morphological transformations\r\n   kernel = np.ones((5, 5))\r\n\r\n\r\n# Used to filter out the background noise\r\n   dilation = cv2.dilate(fg_mask, kernel, iterations=1)\r\n   erosion = cv2.erode(dilation, kernel, iterations=1)\r\n\r\n\r\n# Apply thresholding and blur to create a binary mask\r\n   filtered = cv2.GaussianBlur(erosion, (3, 3), 0)\r\n   ret, thresh = cv2.threshold(filtered, 127, 255, 0)\r\n\r\n\r\n# Find contours in the edge-detected image\r\n   contours, hierachy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)\r\n\r\n\r\n   try:\r\n       # Find contours with maximum area\r\n       contour = max(contours, key=lambda x: cv2.contourArea(x))\r\n\r\n\r\n       # Draw bounding boxes around the detected objects\r\n       x, y, w, h = cv2.boundingRect(contour)\r\n       cv2.rectangle(cv2.crop_image, (x, y), (x + w, y + h), (0, 0, 255), 0)\r\n\r\n\r\n\r\n\r\n       hull = cv2.convexHull(contour)\r\n\r\n\r\n       drawing = np.zeros(cv2.crop_image.shape, np.uint8)\r\n       cv2.drawContours(drawing, [contour], -1, (0, 255, 0), 0)\r\n       cv2.drawContours(drawing, [hull], -1, (0, 0, 255), 0)\r\n\r\n\r\n       hull = cv2.convexHull(contour, returnPoints=False)\r\n       defects = cv2.convexityDefects(contour, hull)\r\n\r\n\r\n       count_defects = 0\r\n\r\n\r\n       for i in range(defects.shape[0]):\r\n           s, e, f, d = defects[i, 0]\r\n           start = tuple(contour[s][0])\r\n           end = tuple(contour[e][0])\r\n           far = tuple(contour[f][0])\r\n\r\n\r\n           a = math.sqrt((end[0] - start[0]) ** 2 + (end[1] - start[1]) ** 2)\r\n           b = math.sqrt((far[0] - start[0]) ** 2 + (far[1] - start[1]) ** 2)\r\n           c = math.sqrt((end[0] - far[0]) ** 2 + (end[1] - far[1]) ** 2)\r\n           angle = (math.acos((b ** 2 + c ** 2 - a ** 2) \/ (2 * b * c)) * 180) \/ 3.14\r\n\r\n\r\n           if angle &lt;= 90:\r\n               count_defects += 1\r\n               cv2.circle(cv2.crop_image, far, 1, [0, 0, 255], -1)\r\n\r\n\r\n           cv2.line(cv2.crop_image, start, end, [0, 255, 0], 2)\r\n\r\n\r\n       # If the condition matched press space button\r\n       if count_defects &gt;= 4:\r\n               pyautogui.press('space')\r\n               cv2.putText(frame, \"JUMP\", (115, 80), cv2.FONT_HERSHEY_SIMPLEX, 2, 2, 2)\r\n   except:\r\n       pass\r\n\r\n\r\n   # Assign the title on the window\r\n   cv2.imshow(\"Dataflair Dino Game\", frame)\r\n\r\n\r\n   # If q button is pressed, shut the camera\r\n   if cv2.waitKey(1) == ord('q'):\r\n       break\r\n\r\n\r\n# Release the camera and close the window\r\nvideo_capture.release()\r\ncv2.destroyAllWindows()<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>#Import the necessary modules import pyautogui import numpy as np import cv2 import math # Initialize the video capture video_capture = cv2.VideoCapture(0) while video_capture.isOpened(): # Captures the frames of the camera ret, frame =&#46;&#46;&#46;<\/p>\n","protected":false},"author":581,"featured_media":136220,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[31456,31457,31461,31460,31459,31458,20614,22679,30316],"class_list":["post-136215","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-machine-learning","tag-chrome-dino-game","tag-chrome-dino-game-project","tag-chrome-dino-game-using-machine-learning","tag-machine-learning-chrome-dino-game","tag-machine-learning-chrome-dino-game-project","tag-machine-learning-project-for-practice","tag-machine-learning-projects","tag-machine-learning-projects-for-beginners","tag-machine-learning-projects-ideas"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Machine Learning Project - Chrome Dino Game - DataFlair<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Machine Learning Project - Chrome Dino Game - DataFlair\" \/>\n<meta property=\"og:description\" content=\"#Import the necessary modules import pyautogui import numpy as np import cv2 import math # Initialize the video capture video_capture = cv2.VideoCapture(0) while video_capture.isOpened(): # Captures the frames of the camera ret, frame =&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-04-18T14:01:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2024\/04\/machine-learning-chrome-dino-game-scaled.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1340\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Machine Learning Project - Chrome Dino Game - DataFlair","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/","og_locale":"en_US","og_type":"article","og_title":"Machine Learning Project - Chrome Dino Game - DataFlair","og_description":"#Import the necessary modules import pyautogui import numpy as np import cv2 import math # Initialize the video capture video_capture = cv2.VideoCapture(0) while video_capture.isOpened(): # Captures the frames of the camera ret, frame =&#46;&#46;&#46;","og_url":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2024-04-18T14:01:53+00:00","og_image":[{"width":2560,"height":1340,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2024\/04\/machine-learning-chrome-dino-game-scaled.webp","type":"image\/webp"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/c187795dc82ab948373cca526df7c445"},"headline":"Machine Learning Project &#8211; Chrome Dino Game","datePublished":"2024-04-18T14:01:53+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/"},"wordCount":8,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2024\/04\/machine-learning-chrome-dino-game-scaled.webp","keywords":["chrome dino game","chrome dino game project","chrome dino game using machine learning","machine learning chrome dino game","machine learning chrome dino game project","machine learning project for practice","machine learning projects","machine learning projects for beginners","machine learning projects ideas"],"articleSection":["Machine Learning Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/","url":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/","name":"Machine Learning Project - Chrome Dino Game - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2024\/04\/machine-learning-chrome-dino-game-scaled.webp","datePublished":"2024-04-18T14:01:53+00:00","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2024\/04\/machine-learning-chrome-dino-game-scaled.webp","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2024\/04\/machine-learning-chrome-dino-game-scaled.webp","width":2560,"height":1340,"caption":"machine learning chrome dino game"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/machine-learning-chrome-dino-game\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Machine Learning Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/machine-learning\/"},{"@type":"ListItem","position":3,"name":"Machine Learning Project &#8211; Chrome Dino Game"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/c187795dc82ab948373cca526df7c445","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/2302ebc438084d2f1f993edc1996a0aae01332e81f3227cba8df0c48ec010ca4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/2302ebc438084d2f1f993edc1996a0aae01332e81f3227cba8df0c48ec010ca4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2302ebc438084d2f1f993edc1996a0aae01332e81f3227cba8df0c48ec010ca4?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team provides high-impact content on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. We make complex concepts easy to grasp, helping learners of all levels succeed in their tech careers.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam6\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/136215","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/581"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=136215"}],"version-history":[{"count":5,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/136215\/revisions"}],"predecessor-version":[{"id":136221,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/136215\/revisions\/136221"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/136220"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=136215"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=136215"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=136215"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}