並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 175件

新着順 人気順

OpenCVの検索結果121 - 160 件 / 175件

  • OpenCV-Pythonでの図形検出、図形数える – S-Analysis

    Skip to content 2 thoughts on “OpenCV-Pythonでの図形検出、図形数える”Pingback: OpenCV + Pythonでの色認識・色検出 | S-Analysis Pingback: OpenCVのfindContours hierarchy(輪郭の階層情報)の解説 - S-Analysis Comments are closed.

    • 【Python版OpenCV】Haar Cascadeで顔検出、アニメ顔検出、顔にモザイク処理

      Python+OpenCVでHaar Cascade識別器(分類器)を実装し、画像から顔検出、アニメ顔検出、顔にモザイク処理する方法をソースコード付きで解説します。

        【Python版OpenCV】Haar Cascadeで顔検出、アニメ顔検出、顔にモザイク処理
      • OpenCV + Pythonで特定の図形を検出する1(図形の領域を矩形で取得)

        手書きのこんな図形 これをサンプルとし、図形中に矢印や星印が写っているか判定できるか試してみます。 こちらを参考にさせていただきました。 AVFoundation+OpenCVで矩形検出(「名刺撮影用カメラ」みたいなやつ作ってみました) OpenCV 3.4.1 + Python 3.6.5の環境で試しています。 グレースケール 参考サイトのとおり、図形の検出を容易にするためグレースケール化。 import cv2 as cvdef main():    # ファイルを読み込み    image_file = 'target.png'    src = cv.imread(image_file, cv.IMREAD_COLOR)    img_gray = cv.cvtColor(src, cv.COLOR_RGB2GRAY)    # 結果を保存    cv.imwrite('resul

          OpenCV + Pythonで特定の図形を検出する1(図形の領域を矩形で取得)
        • Visual Studio + Image Watch プラグインで快適 OpenCV 画像処理開発

          この記事はOpenCV Advent Calendar 2021の 24 日目の記事です。文体は真面目ですが、内容はゆるふわにいきます。ふわふわ~。 はじめに OpenCV の Python bindings は便利ですよね。特に Jupyter notebook と組み合わせて処理結果を見ながら画像処理を組み立てて行ったりとかが簡単に出来ます。一方で C++ での OpenCV 開発の場合はどうでしょうか? 結果を一々 imwrite してたりしませんか? Windows で Visual Studio を使っている場合は、この記事で紹介する Visual Studio の Image Watch プラグインを使えばそんなことしなくても画像を見ながらデバッグが出来ます。 Image Watch plugin のインストール Visual Studio Marketplace で "ima

            Visual Studio + Image Watch プラグインで快適 OpenCV 画像処理開発
          • OpencvとPythonで監視カメラ(SecurityCamera)を作る方法 - Qiita

            0.最初に 今回作るものがどういう感じで動くのか見てみたい方は、こちら(youtubeの動画)でどうぞ。 1.処理を書く import cv2 from datetime import datetime import requests import time token = 'Your Token' cap = cv2.VideoCapture(0) lastframe = None def send_msg(): url = 'https://notify-api.line.me/api/notify' headers = {'Authorization':'Bearer '+token} data = {"message":"Someone in your room."} image = '/home/igor-bond/image.jpg' file = {'imageFile':

              OpencvとPythonで監視カメラ(SecurityCamera)を作る方法 - Qiita
            • 画像処理を用いた自動車のナンバープレート(自動車登録番号表)の解析 - AICam

              PythonとOpenCVを利用して、画像処理による自動車のナンバープレートの解析という技術検証を行いました。自動車のナンバープレートを読み取りたい事例として、車両の管理や取り締まりが挙げられます。我々の生活の中で幅広い使用用途が考えられますが、今回は屋外での利用を想定とした条件としました。その際の作業過程や結果などについてご紹介します。 自動車のナンバープレート解析の活用及び技術検証 本記事では画像処理を用いた自動車のナンバープレート(自動車登録番号表)の読み取りと解析について紹介します。 駐車場への車両の出入庫を管理する 許可のない車両の不法侵入を検知・通知する 駐車車両を記録し訪問者の属性を割り出す等 上記のように我々の生活の中で幅広い使用用途が考えられます。 またその場合、野外での利用が想定されます。そのため今回は以下2点をを条件としました。 安価&コンパクトな機材を用いてどこにで

              • OpenCVのFPGAハードウェア化 KRIAで行うOpenCVの高速化(Vitis2022.1版) - Qiita

                FPGAでOpcnCVのハードウェア化 画像ライブラリーとして、人気の高い、OpenCV C言語でもPythonでも簡単に使えることが大きな特徴です。 このOpenCVをもっと高速化できないのか? その答えの一つが、FPGAを使って、OpenCVをハードウェア化する方法です。 今回は、2021年に登場した、新FPGAボード KRIA AIスターターキットを使って、 OpenCVのハードウェア化を試したいと思います。 ザイリンクスの新FPGAボードKRIA登場。 2021年になりますが、ザイリンクスから新FPGAボート「KRIA」が登場しました。 これからのFPGA入門機として、大活躍します。 大きな特徴は高性能なのに安い。そして、簡単に使えるようになったことです。 FPGAでAIが実現できる性能を持ちながら、AIスターターキットが3万円台で、購入できます。 今までの3万円台のFPGAボード

                  OpenCVのFPGAハードウェア化 KRIAで行うOpenCVの高速化(Vitis2022.1版) - Qiita
                • OpenCVの描画機能 — OpenCV-Python Tutorials 1 documentation

                  OpenCVを使って色々な幾何学的形状を持つオブジェクトを描画する方法を学びます 以下の関数の使い方を学びます: cv2.line(), cv2.circle() , cv2.rectangle(), cv2.ellipse(), cv2.putText() etc. img : オブジェクトを描画する画像 color : オブジェクトの色.BGRで指定する場合はtupleとして指定する,例えば青であれば (255,0,0) .グレースケールで指定する場合は単にスカラー値を指定する. thickness : 線や円などの太さ. 閉じている図形(例えば円)に対して -1 が指定された場合,そのオブジェクトは塗りつぶされる. デフォルト値は1 lineType : 線のタイプ, 8連結,アンチーエイリアス等.デフォルトは8連結. cv2.LINE_AA を指定すると曲線の描画に適したアンチーエ

                  • OpenCVではじめよう ディープラーニングによる画像認識

                    2022年4月30日紙版発売 2022年4月8日電子版発売 吉村康弘,杉浦司,五木田和也 著 B5変形判/312ページ 定価3,740円(本体3,400円+税10%) ISBN 978-4-297-12775-6 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 OpenCVはコンピュータビジョン分野でもっとも利用されているオープンソースフレームワークです。近年の人工知能ブームに呼応する形で機械学習やディープラーニングAPIが強化され,物体の名称と位置を認識するオブジェクト検出(Object Detection)といったタスクも容易に扱えるようになりました。 とはいえ

                      OpenCVではじめよう ディープラーニングによる画像認識
                    • https://dev.infohub.cc/build-opencv-430-with-cuda/

                        https://dev.infohub.cc/build-opencv-430-with-cuda/
                      • Dear PyGuiとOpenCVを組み合わせて動画再生アプリを作成してみる - Elsaの技術日記(徒然なるままに)

                        前回はDear PyGuiというpython用のGUIライブラリについてご紹介しました。 elsammit-beginnerblg.hatenablog.com 今回はこちらのDear PyGuiとOpenCVを組み合わせて動画再生アプリを作成してみたいと思います。 ■Dear PyGui上で動画を表示してみる ■動画再生アプリのご紹介 ■最後に ■参考 ■Dear PyGui上で動画を表示してみる では早速Dear PyGuiとOpenCVを組み合わせて動画表示方法についてまとめていきます。 まずはコードを載せます。 import dearpygui.dearpygui as dpg import numpy as np import cv2 import time dpg.create_context() dpg.create_viewport(max_width=550, max_h

                          Dear PyGuiとOpenCVを組み合わせて動画再生アプリを作成してみる - Elsaの技術日記(徒然なるままに)
                        • OpenCVで透過画像を扱う ~スプライトを舞わせる~ - Qiita

                          はじめに OpenCVで透過png画像を扱い、往年のホビーパソコンのスプライト的なことをやってみよう。 本格的にスプライトを使ったゲームを作りたい人はpygameを使うとよい。私はOpenCVの勉強をしたいだけだ。 基本 RGBA要素について ここではいらすとやの「決めポーズを取る戦隊もののキャラクターたち(集合)」(を縮小したもの)を使う。背景は透過処理されている。 sentai.png RGBA画像を取り込むにはcv2.imread()でflags = cv2.IMREAD_UNCHANGEDと指定する。 実際はそんな呪文を覚える必要はなく、2番目の引数として-1を指定すればよい。引数を1にするもしくは省略するとRGBの3チャンネル画像として取り込まれる。 import cv2 filename = "sentai.png" img4 = cv2.imread(filename, -1

                            OpenCVで透過画像を扱う ~スプライトを舞わせる~ - Qiita
                          • 第6回 初めてのOpenCV開発 ― highgui/imgcodecs/videoioモジュール【OpenCV 3.1.0】

                            第6回 初めてのOpenCV開発 ― highgui/imgcodecs/videoioモジュール【OpenCV 3.1.0】:OpenCV入門【3.0対応】(2/2 ページ)

                              第6回 初めてのOpenCV開発 ― highgui/imgcodecs/videoioモジュール【OpenCV 3.1.0】
                            • cv::Mat を protocol buffer に格納する (C++ で OpenCV & protobuf) - luggage baggage

                              この記事では、C++ で OpenCV を使いつつ、cv::Mat に格納されたバイナリデータを protocol buffer に格納しシリアライズする方法を書いていきます。画像認識系のアルゴリズムを作る際、カメラデバイス上では C++ を使ってフレームを取得し、サーバ上の Python 機械学習アルゴリズムに対して gRPC 通信でデータを送る、みたいなシチュエーションで使った方法となります。 検証環境 docker on MacOS: Version 18.06.1-ce-mac73 (26764) Ubuntu 16.04 image: Linux 056010041c82 4.9.93-linuxkit-aufs #1 SMP Wed Jun 6 16:55:56 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux gcc version 5.4.0

                                cv::Mat を protocol buffer に格納する (C++ で OpenCV & protobuf) - luggage baggage
                              • pythonで画像の陰の除去 - Qiita

                                はじめに テスト投稿も兼ねて最近調べて試したことのメモを載せます。 問題などあれば指摘していただけるとありがたいです。 目的:画像中の陰(shade)を除去 画像処理ド素人がスマホで撮影したノート等の写真をきれいにするアプリ的な動きをするものを自分でも作ってみたいと思い立ちました。 まずは画像中にどうしても入ってしまう陰が邪魔なので、これを取り除きます。 影と書くとsilhouetteの意味合いが強くなるそうなので、shadeの意味を込めて陰と表記します。 処理 https://www.jstage.jst.go.jp/article/iieej/36/3/36_3_204/_article/-char/ja/ こちらの論文を参考に、「凹凸係数」を利用して影を除去します。 凹凸係数は画像中のそれぞれの画素を周囲の画素の平均値で除算することで求められ、フィルタサイズより大きい勾配を平坦にする

                                  pythonで画像の陰の除去 - Qiita
                                • Python OpenCVの基礎 画素へのアクセス - Pythonの学習の過程とか

                                  Numpyによる画素へのアクセス 画像を読み込むことは前回まででOKですね。 それでは今回もこちらを参考にしながら勉強してまいります OpenCV: Basic Operations on Images 画像を読み込んで、任意の画素の値をみてみよう 前回の記事でやったように、画像を読み込みます peaceandhilightandpython.hatenablog.com 画素へのアクセスは単に座標を指定するだけです pixelValue = img[Y座標, X座標] 画素へのアクセス #coding: utf-8 import cv2 import numpy as np # readImage img = cv2.imread('sample.jpg') pixelValue = img[10, 20] print 'pixelValue = ' + str(pixelValue)

                                    Python OpenCVの基礎 画素へのアクセス - Pythonの学習の過程とか
                                  • OpenCV 4.7.0のChangeLogを読み解く - Qiita

                                    この記事はOpenCV Advent Calendar 2022の12月33日の記事です。 TL;DR OpenCV 4.7.0が12/29にリリースされました、ということで、そのご紹介。 はじめに 自己紹介 どこにでもいる画像処理エンジニアでした!2023年はどうなるか分かりません!! ChangeLogの場所 OpenCVのChangeLogは、wikiで管理されている。 この修正内容のサマリーをざっくりと読み解いていきたい。こんな対応を入れたんだ、へー、というレベルで。 個人的気になったポイント SPNGライブラリ対応!libpngから完全置き換えもあり? Optimizationの「scalable vector instructions」対応とか、胸がわくわくしますね。そういえば、ARMにもあるんですよね…… https://community.arm.com/arm-commu

                                      OpenCV 4.7.0のChangeLogを読み解く - Qiita
                                    • PysimpleGUIを用いたOpenCV画像処理表示 - Qiita

                                      はじめに PysimpleGUIを使った画像処理表示のデモを作成したので、覚えとして記載します。 作成したデモ (1)OpenCVでカメラから画像を受け取りリアルタイムで、ヒストグラムを表示するプログラム 参考: PysimpleGUIを用いたOpenCVのカメラ画像表示 (2)OpenCVで静止画を読み込み、閾値を設定するプログラム 参考: PySimpleGUIで画像処理ビューアーを作る PythonでUSBカメラの映像を取り込み、ヒストグラム(RGB)をリアルタイムに表示する方法 PythonでGUI画面を作る方法::PySimpleGUIでグリッド表示機能のついたキャプチャ画面を作る (3)OpenCVで静止画を読み込み、ROIを設定するプログラム PysimpleGUIでは、画像表示にはCanvasを使う方法と、sg.Imageを使う方法がありますが、今回はsg.Imageを利用

                                        PysimpleGUIを用いたOpenCV画像処理表示 - Qiita
                                      • 元画像処理エンジニアがサイゼリヤの間違い探しをOpenCVで解いてみた - Qiita

                                        はじめに 前職で産業機械に使用する画像処理の設定などを作っていたこともあり、サイゼリヤの間違い探しのアルゴリズムに気になった部分があったので、手を出してみました。 今回のお題 さすがに同じものを使うのは芸がないので、今回は下記の画像で間違い探しを行います。 Copyright Saizeriya Co,. Ltd All rights reserved. ここからは間違い探しの答えの情報が乗っています。 もしネタバレが嫌であれば、サイゼリヤのホームページからチャレンジしてみてください。 変更点…を実装する前に 前提の確認 まず、サイゼリヤの間違い探しについて確認しましょう。 サイゼリヤの間違い探しで注視すべきは次の2点です。 通常は印刷されているメニューを使う 色の違いも答えに含まれる 1は、画像ファイルは解像度を印刷用からディスプレイ用に変換している可能性が高いことを意味しています。 そ

                                          元画像処理エンジニアがサイゼリヤの間違い探しをOpenCVで解いてみた - Qiita
                                        • opencv.jsのダウンロード方法 - Qiita

                                          OpenCV.jsとは 公式から出ているOpenCVのJavascript版です。 公式での入手方法 一応、公式ではopencv.jsに関しては自前でビルドするように書いてある。 https://docs.opencv.org/4.3.0/d4/da1/tutorial_js_setup.html これをwslのUbuntu18.04でやってみたが、環境変数周りがうまくいかないのか、ビルドできなかった。 ↓これのあと $ source ./emsdk_env.sh Setting environment variables: EMSDK = /mnt/c/Users/hattt/Desktop/emsdk This is rm_wrap: Do not use any options. $ python ./platforms/js/build_js.py build_js Args: N

                                            opencv.jsのダウンロード方法 - Qiita
                                          • OpenCV - cv2.distanceTransform で距離変換を行う方法 - pystyle

                                            Warning: Undefined variable $position in /home/pystyles/pystyle.info/public_html/wp/wp-content/themes/lionblog/functions.php on line 4897

                                              OpenCV - cv2.distanceTransform で距離変換を行う方法 - pystyle
                                            • OpenCVで直線検出・矩形検出はPylsdで十分【Python】

                                              この記事で、OpenCVで直線検出・矩形検出する方法を解説しています。 ただし、OpenCVだけには頼りません。 助っ人を用意しています。 その助っ人は、Pylsdです。 Pylsdを利用することで、余計なパラメータ調整とはサヨナラできます。 本記事の内容 Pylsdとは?LSDで直線検出・矩形検出する環境LSDで直線検出・矩形検出を行う【結論】Pylsdを直線検出・矩形検出では使うべき それでは、上記に沿って解説していきます。 Pylsdとは? 主役となるのは、Pylsdです。 このPylsdでは、LSD (Line Segment Detector)というアルゴリズムを採用しています。 通常OpenCVで直線検出をやろうとすれば、ハフ変換が出てきます。 このハフ変換を使いこなすのは、また大変なのです。 パラメータ調整を画像毎に行う必要があります。 正直、素人では使いこなせません。 LS

                                                OpenCVで直線検出・矩形検出はPylsdで十分【Python】
                                              • Pythonでカメラを制御する【研究用】 - Qiita

                                                はじめに 前回の記事 pySerialを使った顕微鏡用多波長LED光源の高速波長切り替えについて 前回は顕微鏡用多波長LED光源の制御方法について書きました。今回はPythonによるカメラ制御について書きたいと思います。顕微鏡といえば肉眼で接眼レンズをのぞき込むイメージがありますが、実はカメラで撮影する場合が多いです。バイオ分野の研究者の中には顕微鏡メーカー各社が配布しているソフトウェアや有償ソフトを購入し、使っている方もいらっしゃいます。Pythonは無償ですので手軽に始められます。また、すでに解析プログラムをPythonで書かれている方は既存のプログラムにハードウェアの制御プログラムを組み込むことで測定フローの自動化ができるでしょう。塩基配列やアミノ酸配列を扱うようなBiopythonや機械学習と組み合わせることもでき、自由度がとても広がります。 定番である画像処理モジュールOpenC

                                                  Pythonでカメラを制御する【研究用】 - Qiita
                                                • Hand 検出について調査中 - Qiita

                                                  Hand 検出について調査中です。 追記 2022.01.13 時点では、代表的なプラットフォームで、hand poseの検出の学習済みモデルが提供されるようになってきています。あなたが利用しようとするプラットフォームで、検索してみてください。 次に示すmediapipeのライブラリにもhand poseの検出を含んでいます。Android iOS C++ Python JSの各環境で利用することができます。 追記 2019.6.25時点で私が使えそうに思っているのは TensorFlow での実装です。 そのため、記述の順序を入れ替えました。 追記 2019.10.4 github で hand-detection についての一覧があります。 https://github.com/topics/hand-detection How to Build a Real-time Hand-De

                                                    Hand 検出について調査中 - Qiita
                                                  • Python+OpenCVとWebカメラを使って動体検知する話 - EnsekiTT Blog

                                                    つまりなにしたの? Python+OpenCVで動いているところに着目しようと思って、動体検知を実装してみた。 どんな実装? OpenCVでWebカメラの画像を取り込む 取り込んだフレームに対して差分をとって動いているところが明るい画像を作る 動いているエリアの面積を計算してちょうどいい検出結果を抽出する 動いているエリアのうちそこそこの大きさのものがあればそれを矩形で表示する 環境構築についてはこちら ensekitt.hatenablog.com コード import cv2 cap = cv2.VideoCapture(0) before = None while True: # OpenCVでWebカメラの画像を取り込む ret, frame = cap.read() # スクリーンショットを撮りたい関係で1/4サイズに縮小 frame = cv2.resize(frame, (i

                                                      Python+OpenCVとWebカメラを使って動体検知する話 - EnsekiTT Blog
                                                    • 【廃止】OpenCVで日本語フォントを描画する を関数化する を汎用的にする - Qiita

                                                      注意(2023.06.11) この記事は使えなくなります。 最新記事「OpenCVで日本語フォントを描画する を関数化する を最新にする」をご利用ください。 はじめに 前回の記事「OpenCVで日本語フォントを描画する を関数化する」でコメントをいただいた。大変ありがたいことだ。 しかも私がサボったところがしっかりと見抜かれている。これは頑張らねばいけません。 改善 RGBとBGRについて 目指すものはcv2.imshow()と同等の使い方で日本語を描画できる関数なので、指定する色はOpenCVの並び(BGR)。 前回の記事では関数内でPILで仕事をするにあたり、PILの色の並び(RGB)に変換した。画像もBGRからRGBに変換し、PILの機能で日本語を描画し、BGRに戻した上でOpenCVに再変換した。 色順の反転をもっとエレガントに 色順の反転について上では各要素を取り出して順序変更す

                                                        【廃止】OpenCVで日本語フォントを描画する を関数化する を汎用的にする - Qiita
                                                      • 【エバンジェリスト・ボイス】Ninjaでビルドを高速化してみよう

                                                        こんにちは。先端技術部、エバンジェリストの黒住です。(2020年10月に、グローバルイノベーションセンターから先端技術部に部署異動しました) 皆さまは、オープンソースのプロジェクトを自分でビルドする機会はあるでしょうか? 私の場合は、独自環境に合わせてカスタマイズしたり、最新環境に対応させるために、独自にオープンソースプロジェクトをビルドする機会がよくあります。 ビルドや動作が保証されている環境ならまだしも、保証の無い最新環境でビルドする場合、1回でビルドが成功する確率は極めて低くなります。そのため、ビルドしてはエラー箇所を修正し、再びビルドしてエラー箇所を修正…という作業を、何回、何十回と繰り返すことも珍しくありません。 そのため、ビルド時間は短いほど良いのですが、実際のオープンソースプロジェクトはビルドに数十分から数時間を要するものもよく見られます。数時間待った上に、ビルドエラーが出る

                                                          【エバンジェリスト・ボイス】Ninjaでビルドを高速化してみよう
                                                        • OpenCV, OpenCV Contrib 4.6.0 のインストール,NVIDIA CUDA 対応可能(ソースコードを使用)(Windows 上)

                                                          ユースケース.OpenCVはWindows でも簡単にインストールできるが,OpenCV conrtib を存分に使いたい,自分の環境にあわせてビルドしたい(NVidia CUDA を使うなど)場合は,ソースコードからビルドする. OpenCV は,実時間コンピュータビジョン (real time computer vision) の アルゴリズムと文書とサンプルコードの集まり. 2500 以上のアルゴリズム. 顔認識、物体認識、人間の動きの分類、カメラの動きの追跡、オブジェクトの動きの追跡、3次元モデルの抽出、ステレオカメラからの3次元点群の生成、イメージスティッチング、類似画像の検索、赤目の除去、眼球運動の追跡、ARの機能など ライセンス: BSD ライセンス インタフェース: C++, Python, Java, MATLAB マシン: Windows, Linux, Mac OS,

                                                          • OpenCV AI Kit by OpenCV — Kickstarter

                                                            Be one of the first to get an OAK-1 module, at a $100 discount off MSRP! All OAK hardware pledges come with a high-quality 0.5 meter USB-C cable and a limited-edition sticker. Note: Shipping, duty and VAT will be collected separately post-campaign. Your pledge is not tax deductible. Includes: OAK-1 Exclusive Sticker Less

                                                              OpenCV AI Kit by OpenCV — Kickstarter
                                                            • OpenCVではじめよう ディープラーニングによる画像認識 | Sugiura-Lab

                                                              OpenCV本を執筆しました 吉村康弘、杉浦司、五木田和也「OpenCVではじめよう ディープラーニングによる画像認識」(技術評論社)という書籍を執筆しました。 OpenCV(Python API)を使ってディープラーニングによる画像認識を手軽に動かすことができる内容となっております。 私は「7章 dnnモジュール基礎」を担当しました。OpenCVのdnnモジュールに用意されているオブジェクト検出、クラス分類、セグメンテーション、テキスト検出・認識、キーポイント検出といったタスクごとに扱いやすく機能がまとめられているHigh Level APIを利用した画像認識を解説しています。ざっくり以下の画像のようなことができます。 ディープラーニングは日進月歩の世界のため書籍でどのモデルを取り扱うかは悩んだのですが、比較的古すぎず押さえておきたいモデルを採用したつもりです。各モデルはすぐに動かせるよ

                                                                OpenCVではじめよう ディープラーニングによる画像認識 | Sugiura-Lab
                                                              • OpenCVを使って点線を含めた縦棒を画像から削除する - いわゆる備忘録

                                                                以下のような画像から数字や横棒を残しつつ点線を削除したい。 方法はいくつか考えられるが、 一番最初に思いついたのはハフ変換を使って直線検出し、検出された線を画像から削除するという方法だった。 ただやってみると気づくのだが、検出された線の太さがわからないので、決め打ちの太さで線を打ち消すことになる。 上の画像みたいに太線と細線と点線が混じっている場合は、太い方を消すために、細い方の線に対しては本来線ではない部分も含めて削除することになる。 場合によっては隣接する文字を削ってしまい文字の判別が不可能になるかもしれない。 また、ハフ変換の場合は点線を直線として検出することができない場合がある。 よく考えると線が画像に対し水平垂直であるという前提条件がおけるのであれば、ハフ変換を用いるのは大仰である。 そこで、点線を含めて縦の線を削除するための簡単なアルゴリズムを作ったので紹介する。 アルゴリズム

                                                                • PythonのMatplotlibのグラフをNumPy行列に変換してOpenCVやPillowで使う

                                                                  PythonのMatplotlibで描いたグラフを、NumPyのndarrayに変換して、OpenCVやPillowで使えるようにします。 目次 Matplotlibのグラフをndarrayに変換するサンプルのグラフの作成グラフをndarrayに変換してPillow(PIL)で表示するグラフをndarrayに変換してOpenCVで表示するMatplotlibのグラフをndarrayに変換する Matplotlibはグラフを描いて表示して保存するだけなら非常に便利なのですが、出力をいじろうとするとなかなか難しいものです。 公式のチュートリアル を参考にしましたが、APIのマニュアルを読んでもよくわからないところがあります。 本投稿の環境は、Python 3.7とmatplotlib 3.1.1です。動作しないようでしたら、matplotlibのバージョンを確認してみてください。 手順は次の通

                                                                  • OpenCV Haar-Cascadeによる顔検出 - Qiita

                                                                    まずはじめに LGTM 乞食なのでよろしくお願いします¥ この記事の目的 なんか顔認証のシステム作りたいなーと思い、OpenCVの基礎的な勉強から始めてます。 OpenCVでは、顔・目などを検出できるカスケード識別器の学習済みファイルを事前に用意されています。 学習済みファイルは下記リンク先からダウンロードできます。 今回は顔検出のために「haarcascade_frontalface_default.xml」を使ってみます。 https://github.com/opencv/opencv/tree/master/data/haarcascades 以下も用意されてるのでまとめてgit cloneしましょう。 カスケード型の識別器のファイル ファイル名 対象物体

                                                                      OpenCV Haar-Cascadeによる顔検出 - Qiita
                                                                    • 領域(輪郭)の属性情報 — OpenCV-Python Tutorials 1 documentation

                                                                      領域(輪郭)の属性情報¶ ここでは物体の特徴を表す時によく使われる輪郭の属性情報(ソリディティ, 等価直径, マスク画像,平均値など)について学びます. より詳細な情報については Matlab regionprops documentation を参照してください. (NB : 重心,面積,周囲長なども輪郭の属性情報ですが,前のチュートリアルで既に扱いました)

                                                                      • Harrisコーナー検出 — OpenCV-Python Tutorials 1 documentation

                                                                        We Harrisのコーナー検出の背景にある概念を理解します. 以下の関数の使い方を学びます: cv2.cornerHarris(), cv2.cornerSubPix() 理論¶ 前チュートリアルでコーナーとは全方向に対して画素値の大きな変化が観測される領域であることを学びました.初期のComputer Visionにおけるコーナー検出の試みとして Chris Harris と Mike Stephens が A Combined Corner and Edge Detector という論文で提案したHarrisのコーナー検出と呼ばれる方法があります.Harrisらはこの単純なアイディアを数式で表現しました.基本的には全方向に対して画素位置 の移動量に対する画素値の違いを見つけるわけです.以下のように表現できます. 窓関数は矩形窓か画素に対して重み付けをするガウシアン窓を使います. コー

                                                                        • Issue 16736 by saskatchewancatch · Pull Request #2449 · opencv/opencv_contrib

                                                                          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                            Issue 16736 by saskatchewancatch · Pull Request #2449 · opencv/opencv_contrib
                                                                          • 【Python×OpenCV】ディスプレイへ画像を出力するコマンドimshowとは - ケイエルブイ

                                                                            カメラから取得した画像をディスプレイに表示する方法を2つご紹介します。 1画像処理ライブラリOpenCVの”imshow()"コマンドを使用する方法 OpenCVの”read()”コマンドでカメラから取得した画像をリアルタイムに動画としてディスプレイに出力したい場合に簡単に実行が可能。 2グラフ描画ライブラリMatplotlibの”imshow()”コマンドを使用する方法 行列データのプロットを得意としているMatplotlibは、豊富なオプションを使用して1枚の画像情報を色々な形で出力する場合に適しています。 本記事では、それぞれの出力方法について、使い方や注意点を解説していきます。

                                                                            • ピンボケ写真の判定方法 - Qiita

                                                                              はじめに 画像を用いたディープラーニングを行おうとした場合、大量の画像データが必要となります。そのため、人にお願いして画像を集めたりしますが、集めた画像データの中にはピンボケ写真があったりします。 『人に頼んでて文句言うな!』と言われそうですが・・・ 正しい学習データを集めるには事前にピンボケ画像を取り除きたいと思ったので、ピンボケ画像の判定方法についてざっと調べてみると、 高速フーリエ変換(FFT:Fast Fourie Transform)​で判定 ディープラーニング​で実装 OpenCVで実装 の3つがありましたのでそれぞれの特徴を記載していきます。 1.高速フーリエ変換(FFT:Fast Fourie Transform)​で判定 ピンボケ写真は画像のエッジ部分が不鮮明なので高周波成分を含みません。 高速フーリエ変換(FFT:Fast Fourie Transform)を活用するこ

                                                                                ピンボケ写真の判定方法 - Qiita
                                                                              • 顔認証のクラウドサービスMercury Cloudでさらに遊んでみる – 複数の顔検知 – | DevelopersIO

                                                                                Mercury Cloudの顔検知APIは、一枚の画像に複数の顔が含まれていても全ての顔を検出できます。 どれくらいの精度で検知できるのかを確認するため、今回は検知した顔を四角の枠で囲ってみます。 やってみる 顔検知のAPIへのアクセス方法などは以前の記事で行ったので今回は割愛します。 スクリプトの準備 5.1 準備 に pythonのファイルがあるので、これらをダウンロードします。 api_parameters.pyをテキストエディターで開き、パラメーターを自身の情報に置き換えます。 スクリプトの編集 pythonのOpenCVを使って四角の枠を描画します。OpenCVは標準ライブラリではないのでインストールしておきます。 pip install opencv-python 四角の枠(長方形)の描画は、cv2.rectangle() を使ってできます。 サンプル import cv2 i

                                                                                  顔認証のクラウドサービスMercury Cloudでさらに遊んでみる – 複数の顔検知 – | DevelopersIO
                                                                                • 画像位置合わせ:SIFTから深層学習まで - Qiita

                                                                                  概要 画像位置合わせについて日本語記事がほとんど無い(2020/1/22 現在)ため、とても分かりやすいと思った Image Registration: From SIFT to Deep Learning という記事を翻訳というかまとめました。省略したり加筆した箇所もあるので、原典にあたりたい方は元記事の方を読んでください。 ソースコード 画像位置合わせ(image registration)とは? 画像位置合わせとは、2枚の画像の位置ずれを補正する処理のことです。画像位置合わせは、同じシーンの複数の画像を比較する時などに用います。例えば、衛星画像解析やオプティカルフロー、医用画像の分野でよく登場します。 具体例を見てみましょう。上の画像は私が新大久保で食べたマスカットボンボンの画像を位置合わせしたものです。とても美味しかったですが、甘党でない方にはおすすめしません。 この例では、左から

                                                                                    画像位置合わせ:SIFTから深層学習まで - Qiita