{"id":608,"date":"2016-08-01T06:02:21","date_gmt":"2016-08-01T04:02:21","guid":{"rendered":"https:\/\/www.kurokesu.com\/main\/?p=608"},"modified":"2016-09-01T20:37:56","modified_gmt":"2016-09-01T18:37:56","slug":"opencv-usb-camera-widget-in-pyqt","status":"publish","type":"post","link":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/","title":{"rendered":"OpenCV USB camera widget in PyQT"},"content":{"rendered":"<p style=\"text-align: justify;\"><a href=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-620 size-medium\" src=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/3-300x253.png\" alt=\"3\" width=\"300\" height=\"253\" srcset=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/3-300x253.png 300w, https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/3.png 683w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>Both tools OpenCV and PyQT are incredibly useful. One in combination with Qt Designer gives rapid GUI building possibility. Another is used for visual image\/video analysis. There was one drawback &#8211; very little documentation how to use them into one piece of code. All in the past now!<\/p>\n<p style=\"text-align: justify;\">To be short &#8211; sample program I finally wrote starts Qt Designer generated user interface. After you press <strong>Start<\/strong> button separate thread (for initializing camera and capturing frames) starts. All new frames are being placed in queue. On the other hand interface checks if there are any frames in the queue and gets them for display. So GUI feels alive and is not occupied with real-time task.<\/p>\n<p style=\"text-align: justify;\">To complement this simple example I added findCirclesGrid for greater visual representation. Provided code lacks this feature, but it is more than easy to implement it by yourself.<\/p>\n<h3>PyQT<\/h3>\n<p style=\"text-align: justify;\">PyQt is a set of Python bindings for the <a href=\"http:\/\/www.qt.io\/\">Qt application framework<\/a> and runs on all platforms supported by Qt including Windows, OS X, Linux, iOS and Android.<\/p>\n<p style=\"text-align: justify;\">To install download binary package from <a href=\"https:\/\/riverbankcomputing.com\/software\/pyqt\/download\">here<\/a>.<\/p>\n<h3>OpenCV<\/h3>\n<p style=\"text-align: justify;\"><a href=\"http:\/\/www.opencv.org\">OpenCV<\/a> (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. OpenCV was built to provide a common infrastructure for computer vision applications and to accelerate the use of machine perception in the commercial products.<\/p>\n<p style=\"text-align: justify;\">To install read <a href=\"http:\/\/docs.opencv.org\/3.0-beta\/doc\/tutorials\/introduction\/windows_install\/windows_install.html\">this official tutorial<\/a> or install wheel from <a href=\"http:\/\/www.lfd.uci.edu\/~gohlke\/pythonlibs\/#scikit-image\">Unofficial Windows Binaries for Python Extension Packages<\/a>.<\/p>\n<h3>Py Qtdesigner<\/h3>\n<p>This is rapid GUI development tool. Can be started in a minute by installing it and running with Python (I don&#8217;t have Python in my environment location so have to use full path):<\/p>\n<pre>c:\\Python27\\Scripts\\pip.exe pip install pyqode.designer\r\nc:\\Python27\\Scripts\\pyqode-designer.exe<\/pre>\n<div id=\"attachment_613\" style=\"width: 609px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/2-1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-613\" class=\"wp-image-613\" src=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/2-1.png\" alt=\"2\" width=\"599\" height=\"339\" srcset=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/2-1.png 1522w, https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/2-1-300x170.png 300w, https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/2-1-768x434.png 768w, https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/2-1-1024x579.png 1024w\" sizes=\"auto, (max-width: 599px) 100vw, 599px\" \/><\/a><p id=\"caption-attachment-613\" class=\"wp-caption-text\">Qt Designer main view<\/p><\/div>\n<h3>Example<\/h3>\n<p style=\"text-align: justify;\">Once we are done installing required packages our test can be run. Here is quick example what can be expected (as I mentioned before feature extraction is added to make this video clip more appealing, provided code displays raw USB camera feed).<\/p>\n<div id=\"attachment_624\" style=\"width: 510px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/out-3.gif\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-624\" class=\"wp-image-624 size-full\" src=\"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/out-3.gif\" alt=\"out\" width=\"500\" height=\"417\" \/><\/a><p id=\"caption-attachment-624\" class=\"wp-caption-text\">Displaying USB camera calibration window in PyQT<\/p><\/div>\n<h3>Script<\/h3>\n<p><script src=\"https:\/\/gist.github.com\/Lukse\/e5f9022f5944599c949ca24d1d4154a2.js\"><\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Both tools OpenCV and PyQT are incredibly useful. One in combination with Qt Designer gives rapid GUI building possibility. Another is used for visual image\/video analysis. There was one drawback &#8211; very little documentation how to use them into one piece of code. All in the past now! To be short &#8211; sample program I [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":620,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[157,153],"tags":[64,74,14],"class_list":["post-608","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-how-to","category-projects","tag-opencv","tag-pyqt","tag-usb-camera"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"robots\" content=\"noindex, nofollow, max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"saulius\"\/>\n\t<meta name=\"keywords\" content=\"opencv,pyqt,usb camera,how to,projects\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"KUROKESU | Cameras, measurement systems, motion platforms and applied computer vision solutions\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"OpenCV USB camera widget in PyQT | KUROKESU\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2016-08-01T04:02:21+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2016-09-01T18:37:56+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"OpenCV USB camera widget in PyQT | KUROKESU\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#article\",\"name\":\"OpenCV USB camera widget in PyQT | KUROKESU\",\"headline\":\"OpenCV USB camera widget in PyQT\",\"author\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/author\\\/saulius\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/wp-content\\\/uploads\\\/2016\\\/07\\\/3.png\",\"width\":683,\"height\":575},\"datePublished\":\"2016-08-01T06:02:21+02:00\",\"dateModified\":\"2016-09-01T20:37:56+02:00\",\"inLanguage\":\"en-US\",\"commentCount\":22,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#webpage\"},\"articleSection\":\"How To, Projects, OpenCV, PyQt, USB camera\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.kurokesu.com\\\/main\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/category\\\/projects\\\/#listItem\",\"name\":\"Projects\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/category\\\/projects\\\/#listItem\",\"position\":2,\"name\":\"Projects\",\"item\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/category\\\/projects\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#listItem\",\"name\":\"OpenCV USB camera widget in PyQT\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#listItem\",\"position\":3,\"name\":\"OpenCV USB camera widget in PyQT\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/category\\\/projects\\\/#listItem\",\"name\":\"Projects\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/#organization\",\"name\":\"KUROKESU\",\"description\":\"Cameras, measurement systems, motion platforms and applied computer vision solutions\",\"url\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/author\\\/saulius\\\/#author\",\"url\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/author\\\/saulius\\\/\",\"name\":\"saulius\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/8ac0f570c05117236865db4fd5f84987bf8284a08e4655209b0bdba15915f689?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"saulius\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#webpage\",\"url\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/\",\"name\":\"OpenCV USB camera widget in PyQT | KUROKESU\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/author\\\/saulius\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/author\\\/saulius\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/wp-content\\\/uploads\\\/2016\\\/07\\\/3.png\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#mainImage\",\"width\":683,\"height\":575},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/2016\\\/08\\\/01\\\/opencv-usb-camera-widget-in-pyqt\\\/#mainImage\"},\"datePublished\":\"2016-08-01T06:02:21+02:00\",\"dateModified\":\"2016-09-01T20:37:56+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/#website\",\"url\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/\",\"name\":\"KUROKESU\",\"description\":\"Cameras, measurement systems, motion platforms and applied computer vision solutions\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.kurokesu.com\\\/main\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"OpenCV USB camera widget in PyQT | KUROKESU","description":"","canonical_url":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/","robots":"noindex, nofollow, max-image-preview:large","keywords":"opencv,pyqt,usb camera,how to,projects","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#article","name":"OpenCV USB camera widget in PyQT | KUROKESU","headline":"OpenCV USB camera widget in PyQT","author":{"@id":"https:\/\/www.kurokesu.com\/main\/author\/saulius\/#author"},"publisher":{"@id":"https:\/\/www.kurokesu.com\/main\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/3.png","width":683,"height":575},"datePublished":"2016-08-01T06:02:21+02:00","dateModified":"2016-09-01T20:37:56+02:00","inLanguage":"en-US","commentCount":22,"mainEntityOfPage":{"@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#webpage"},"isPartOf":{"@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#webpage"},"articleSection":"How To, Projects, OpenCV, PyQt, USB camera"},{"@type":"BreadcrumbList","@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.kurokesu.com\/main#listItem","position":1,"name":"Home","item":"https:\/\/www.kurokesu.com\/main","nextItem":{"@type":"ListItem","@id":"https:\/\/www.kurokesu.com\/main\/category\/projects\/#listItem","name":"Projects"}},{"@type":"ListItem","@id":"https:\/\/www.kurokesu.com\/main\/category\/projects\/#listItem","position":2,"name":"Projects","item":"https:\/\/www.kurokesu.com\/main\/category\/projects\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#listItem","name":"OpenCV USB camera widget in PyQT"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.kurokesu.com\/main#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#listItem","position":3,"name":"OpenCV USB camera widget in PyQT","previousItem":{"@type":"ListItem","@id":"https:\/\/www.kurokesu.com\/main\/category\/projects\/#listItem","name":"Projects"}}]},{"@type":"Organization","@id":"https:\/\/www.kurokesu.com\/main\/#organization","name":"KUROKESU","description":"Cameras, measurement systems, motion platforms and applied computer vision solutions","url":"https:\/\/www.kurokesu.com\/main\/"},{"@type":"Person","@id":"https:\/\/www.kurokesu.com\/main\/author\/saulius\/#author","url":"https:\/\/www.kurokesu.com\/main\/author\/saulius\/","name":"saulius","image":{"@type":"ImageObject","@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/8ac0f570c05117236865db4fd5f84987bf8284a08e4655209b0bdba15915f689?s=96&d=mm&r=g","width":96,"height":96,"caption":"saulius"}},{"@type":"WebPage","@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#webpage","url":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/","name":"OpenCV USB camera widget in PyQT | KUROKESU","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.kurokesu.com\/main\/#website"},"breadcrumb":{"@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#breadcrumblist"},"author":{"@id":"https:\/\/www.kurokesu.com\/main\/author\/saulius\/#author"},"creator":{"@id":"https:\/\/www.kurokesu.com\/main\/author\/saulius\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/3.png","@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#mainImage","width":683,"height":575},"primaryImageOfPage":{"@id":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/#mainImage"},"datePublished":"2016-08-01T06:02:21+02:00","dateModified":"2016-09-01T20:37:56+02:00"},{"@type":"WebSite","@id":"https:\/\/www.kurokesu.com\/main\/#website","url":"https:\/\/www.kurokesu.com\/main\/","name":"KUROKESU","description":"Cameras, measurement systems, motion platforms and applied computer vision solutions","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.kurokesu.com\/main\/#organization"}}]},"og:locale":"en_US","og:site_name":"KUROKESU | Cameras, measurement systems, motion platforms and applied computer vision solutions","og:type":"article","og:title":"OpenCV USB camera widget in PyQT | KUROKESU","og:url":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/","article:published_time":"2016-08-01T04:02:21+00:00","article:modified_time":"2016-09-01T18:37:56+00:00","twitter:card":"summary","twitter:title":"OpenCV USB camera widget in PyQT | KUROKESU"},"aioseo_meta_data":{"post_id":"608","title":null,"description":null,"keywords":null,"keyphrases":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2020-12-21 05:40:19","updated":"2025-06-04 06:38:17","primary_term":null,"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.kurokesu.com\/main\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.kurokesu.com\/main\/category\/projects\/\" title=\"Projects\">Projects<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tOpenCV USB camera widget in PyQT\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.kurokesu.com\/main"},{"label":"Projects","link":"https:\/\/www.kurokesu.com\/main\/category\/projects\/"},{"label":"OpenCV USB camera widget in PyQT","link":"https:\/\/www.kurokesu.com\/main\/2016\/08\/01\/opencv-usb-camera-widget-in-pyqt\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.kurokesu.com\/main\/wp-content\/uploads\/2016\/07\/3.png","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6VSmB-9O","_links":{"self":[{"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/posts\/608","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/comments?post=608"}],"version-history":[{"count":21,"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/posts\/608\/revisions"}],"predecessor-version":[{"id":3108,"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/posts\/608\/revisions\/3108"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/media\/620"}],"wp:attachment":[{"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/media?parent=608"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/categories?post=608"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kurokesu.com\/main\/wp-json\/wp\/v2\/tags?post=608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}