{"id":5747,"date":"2018-06-11T11:59:15","date_gmt":"2018-06-11T11:59:15","guid":{"rendered":"http:\/\/www.garysieling.com\/blog\/?p=5747"},"modified":"2018-06-11T11:59:15","modified_gmt":"2018-06-11T11:59:15","slug":"opencv-convert-hsv-image-grayscale-hue-saturation-channel","status":"publish","type":"post","link":"https:\/\/www.garysieling.com\/blog\/opencv-convert-hsv-image-grayscale-hue-saturation-channel\/","title":{"rendered":"OpenCV &#8211; Convert HSV image to grayscale with hue or saturation channel"},"content":{"rendered":"<p>A lot of interesting operations with OpenCV start by converting to grayscale. As an interesting experiment, you can convert to HSV first, and display the &#8220;grayscale&#8221; of one of these channels. It doesn&#8217;t make sense to compare the hue between two images (this assumes a specific linearity of images), but it&#8217;s an interesting experiment nonetheless:<\/p>\n<pre lang=\"python\">\nhsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)\n\t\n(h,s,v) = cv2.split(hsv)\nv[:] = 100\nimg = cv2.merge((v, v, s))\nrgb = cv2.cvtColor(img, cv2.COLOR_HSV2RGB)\t\ngray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)\t\n\ncv2.imshow(\"img\", img)\ncv2.imshow(\"rgb\", rgb)\ncv2.imshow(\"gray\", gray)\n<\/pre>\n<p>For better techniques for grayscale conversion, check out <a href=\"http:\/\/www.tannerhelland.com\/3643\/grayscale-image-algorithm-vb6\/\">this post<\/a> which documents a lot of options.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Visualizing the HSV channels of an image as grayscale<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[4],"tags":[407,447],"aioseo_notices":[],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts\/5747"}],"collection":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/comments?post=5747"}],"version-history":[{"count":0,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts\/5747\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/media?parent=5747"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/categories?post=5747"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/tags?post=5747"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}