#opencv3
Explore tagged Tumblr posts
Photo

I am currently working on a new face detection for my robot it's coming together pretty good. the goal is that the eyes of follow my head and eventually turns the head via a stepper motor #navarrasoftwaresolutions #opencv3 #Linux #ai #robotics #leinach #open-source #raspberry Navarra Software Solutions #Würzburg #python3 #facerecognition #facedetection https://www.instagram.com/p/B01IxaGAUKg/?igshid=1uypgzps6ed7f
#navarrasoftwaresolutions#opencv3#linux#ai#robotics#leinach#open#raspberry#würzburg#python3#facerecognition#facedetection
0 notes
Text
Master Computer Vision™ OpenCV3 In Python & Machine Learning
Master Computer Vision™ OpenCV3 In Python & Machine Learning
Master Computer Vision™ OpenCV3 In Python & Machine Learning
Learn Computer Vision Concepts by making 12 Projects like Handwriting Recognition, Face Filters, Car & People Detection!
What you’ll learn
How to build complex computer vision applications using the latest techniques in OpenCV
Use Machine Learning & Augmented Reality in computer vision
Face Detection & Recognition (face…
View On WordPress
0 notes
Photo

Raspberry Pi 3 for Shape detection❤️. #RBPi3 #opencv3 #python3 #PDSP (en Aguascalientes City)
0 notes
Video
instagram
#realtimemotioncapture #biomechatronics #tensorflow #openCV3 #anaconda #python #neuralnetwork #convolutionalneuralnetwork #artificialinteligence #biomechanicalanalysis #fisioteraphy #人工知能 Without stereo cameras 😎
#realtimemotioncapture#biomechatronics#opencv3#anaconda#artificialinteligence#fisioteraphy#tensorflow#python#人工知能#neuralnetwork#biomechanicalanalysis#convolutionalneuralnetwork
0 notes
Text
Python ile OpenCV Günlükleri
New Post has been published on http://www.python.tc/python-ile-opencv-gunlukleri/
Python ile OpenCV Günlükleri
İyi günler Python Türkiye ailesi. Yazı dizilerimize kaldığımız yerden devam ediyoruz.
Bugünki yazımızda bilgisayar görüntü işleme kütüphanelerinde en yaygın kullanılanlarından olan OpenCv’ye giriş yapacağız. Akabinde , python ile Opencv uygulamalarımızı aktaracağız. Şimdilik çok sıkmadan, opencv hakkında kısa bilgiler vererek yazı dizimize giriş yapalım
Opencv , 1999 yılında İntel tarafından geliştirilen BSD lisanslı, c, c++ ile yazılmış, bir resim ya da video içerisindeki anlamlı bilgilerin çıkarılıp işlenmesinde kullanılan görüntü işleme kütüphanesidir. Gerçek zamanlı uygulamalarda çalışabilmesi, açık kaynak ve ücretsiz oluşu ve windows, MacOS x ve gnu/linux platformlarında kullanılabilmesi, kütüphanenin cazibesini artırmıştır. (an itibariyle 13.050 forklanma sayısına ulaşmıştır https://github.com/opencv/opencv )
Opencv temel olarak 5 temel bileşenden oluşmaktadır:
Cv bileşeni ; temel resim işleme fonksiyonlarını ve yüksek seviye algoritmaları barındıran bileşenidir
MLL Bileşeni; istatistiki veriler ve verilerin sınıflandırılması ile ilgili, makine öğrenmesinde kulanılan bileşenidir.
HighGUI bileşeni; OpenCV kütüphanesinde bir çok nesnenin create edildiği, video, resim kaydetmek, işleme, silmek gibi I/O işlemlerinin yapıldığı grafik ara birimidir.
CXCore bileşeni; Opencv ye ait cvSize, cvMat vb. gibi veri yapılarını barındıran XML desteği sağlayan bileşendir.
CvAux; Şablon ve resim eşleştirme, yüz tanıma, vücüt hareketlerini tanıma vb. algoritmaları barındıran bileşendir .
Gnu/Linux’a Opencv Kurulumu
Python ile Opencv çalışmalarını Linux Mint 18.1 64 bit Serena cihazında gerçekleştirmekteyim. Opencv’nin linux’a kurulumu için
>> http://www.pyimagesearch.com/2015/07/20/install-opencv-3-0-and-python-3-4-on-ubuntu/
linkini detaylı inceleyerek kurulumu gerçekleştirebilirsiniz
Bir sonraki yazımızda Python ile ilk opencv uygulamamızı gerçekleştireceğiz .
Bol Pythonlu günler..
0 notes
Photo

【その他部門】Mon, 13 Apr 2020 09:23:00 +0900 現在売れ筋ランキング1位 [楽天市場の部]: 詳解 OpenCV3 コンピュータビジョンライブラリを使った画像処理・認識ー [ Gary Bradski ] 【楽天ブックスならいつでも送料無料】 http://okaimonoweb.com/topSellersRaku/?categorytag=101937%3B%E3%81%9D%E3%81%AE%E4%BB%96%3B3
0 notes
Text
Compile OpenCV3 With Python3.5 Conda Environment on OSX Sierra
As the title suggests, this article will explore how to compile OpenCV3 with Python (version 3.5) in the Conda Environment using the OSX Sierra operating system. Let's get going! Create the Conda Environment With Python 3.5 $ conda create -n python35 python=35 $ conda activate python35 Verify the Conda Environment With Python 3.5 $ python Python 2.7.14 |Anaconda custom (64-bit)| (default, Dec 7 2017, 11:07:58) Now, we will install the latest version of Tensorflow which will install lots of the required dependencies that I really needed: https://goo.gl/JGHrS1 #DataIntegration #ML
0 notes
Text
#Python3 + #OpenCV3 Self Driving Car ...
#Python3 + #OpenCV3 Self Driving Car …
[ad_1]
#Python3 + #OpenCV3 Self Driving Car https://t.co/Q2r1zuqRo0 pic.twitter.com/T0XUweWELS
— Alvar Laigna (@alvarlaigna) May 7, 2019
[ad_2] Source by Alvar Laigna
View On WordPress
0 notes
Video
youtube
numpy > Python+OpenCV3 3图像处理视频教程 03 Numpy数组操作 | 2018-09-23T23:26:01.000Z
0 notes
Text
Build OpenCV 3.4 with CUDA on NVIDIA Jetson TX2
Build OpenCV 3.4 with CUDA on NVIDIA Jetson TX2
In order for OpenCV to get access to CUDA acceleration on the NVIDIA Jetson TX2 running L4T 28.2 (JetPack 3.2), you need to build the library from source. Looky here:
Background
With the latest release of L4T, 28.2, OpenCV version 3.3 may be installed through the JetPack installer. At the time of the L4T release, OpenCV did not…
View On WordPress
0 notes
Text
學習 OpenCV 3.2+ QT 5+ ffmpeg 實戰開發視訊編輯器課程
學習 OpenCV 3.2+ QT 5+ ffmpeg 實戰開發視訊編輯器課程
課程簡介
OpenCV3
從這 14 小時的課程,你會學到
學會使用 opencv 處理視訊,並使用 QT 開發視訊編輯器
要求
有 c 或者 c++ 基礎的同學
課程說明
課程基於 opencv 3.2 講解,全部使用最新的 c++ 介面,舊的介面會逐步被 opencv 拋棄,所以我們學習還是盡量學習新的介面,QT 使用最新的 5.8 版本,課程中會跨平台展示,所有的程式碼都可以在 windows 和 linux 中編譯,在 windows 中使用 vs2013,linux 中使用 qtcreator,課程會提供全部源碼和最新 opencv 和 QT 版本的下載。
課程中講解的 opencv 知識點,不追求全(全不如看手冊),但求完整,講解我們實戰專案用到的函數方法,但凡是講到的都要有一定的深度,分析其函數的實現、源碼,有些我們自己也作出實現,課程的目標不是只能作出…
View On WordPress
0 notes
Text
切り出し
自分用メモ。
VMを用いたLinux環境推奨。
Python3.5
OpenCV 3.0.0
import os from functools import cmp_to_key import numpy as np import cv2 SRC_DIR = 'src' DST_DIR = 'dst' def apply_adaptive_threshold(image, radius=15, C=5): gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) return cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY_INV, 2 * radius + 1, C) def find_external_contours(thresh): _, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) external_num = hierarchy.shape[1] if hierarchy is not None else 0 return contours[0:external_num] def extract_rects_from_controus(contours, min_perimeter, max_perimeter): frames = [] for contour in contours: frame = cv2.minAreaRect(contour) center, size, angle = frame # 縦・横が逆になっている場合、90度回転させる if angle < -45: size = tuple(reversed(size)) angle = angle + 90 w, h = size perimeter = 2 * (w + h) if min_perimeter < perimeter < max_perimeter and abs(angle) < 3.0 and 0.1 <= min(w, h) / max(w, h) <= 1.0: frames.append((center, (w + 2, h + 2), angle)) # パディングを加える return frames def cmp_frame(tolerance): def _cmp(lhs, rhs): return (lhs > rhs) - (lhs < rhs) def _cmp_frame(lhs, rhs): if lhs[0] == rhs[0]: return 0 x1, y1 = lhs[0] x2, y2 = rhs[0] if abs(x1 - x2) < tolerance: return _cmp(y1, y2) else: return _cmp(x2, x1) return _cmp_frame def cut_frame(image, rect): center, size, angle = rect size = int(np.round(size[0])), int(np.round(size[1])) box = cv2.boxPoints(rect) M = cv2.getAffineTransform(np.float32(box[1:4]), np.float32([[0, 0], [size[0], 0], [size[0], size[1]]])) return cv2.warpAffine(image, M, size) def cut_frames(image): height, width, ch = image.shape # 二値化 thresh = apply_adaptive_threshold(image) # 一番外側の輪郭wだけを抽出 contours = find_external_contours(thresh) # 抽出した輪郭からコマの四角形だけを取り出す min_perimeter, max_perimeter = (width + height) * 0.25, (width + height) * 1.5 rects = extract_rects_from_controus(contours, min_perimeter, max_perimeter) # 抽出した四角形をソートする tolerance = width / 3 if width < height else width / 6 rects = sorted(rects, key=cmp_to_key(cmp_frame(tolerance))) # コマの部分の画像を切り出す frames = [] for rect in rects: frame = cut_frame(image, rect) frames.append(frame) return frames def main(): for root, dirs, files in os.walk(SRC_DIR): rel_path = os.path.relpath(root, SRC_DIR) dst_dir = os.path.join(DST_DIR, rel_path) if not os.path.exists(dst_dir): os.mkdir(dst_dir) for file in files: name, ext = os.path.splitext(file) if ext.lower() not in {'.jpg', '.png'}: continue file_path = os.path.join(root, file) image = cv2.imread(file_path) frames = cut_frames(image) for i, frame in enumerate(frames): dst_path = os.path.join(dst_dir, name + '_' + str(i + 1) + ext) cv2.imwrite(dst_path, frame) if __name__ == '__main__': main()
srcフォルダ以下にある画像を再帰的に処理し、dstフォルダ以下に切り抜き画像を出力するように指定する。
OpenCVにfindContoursという輪郭を抽出するメソッドがあるのでそれでコマの輪郭を抽出することを目指す。
■二値化
def apply_adaptive_threshold(image, radius=15, C=5): gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) return cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY_INV, 2 * radius + 1, C)
輪郭を抽出する前にまず二値化する必要があるのでグレーに変換した後、Adaptive Thresholdを行う。Adaptiveの場合、画像全体で一意の閾値を適用するのではなく周囲のピクセルに応じて閾値を上下させるので影があっても綺麗に処理してくれる。 条件が悪い場合はブロックサイズを大きくしたり等パラメータを調整する必要があるのだが、スキャナできちんとスキャンしたものを対象にする場合はそこまで気を使う必要はほぼない。(Lide210、MG3130を用いての確認。)
■輪郭抽出
def find_external_contours(thresh): _, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) external_num = hierarchy.shape[1] if hierarchy is not None else 0 return contours[0:external_num]
findContoursで輪郭を抽出。一番外部の輪郭(コマの内部の輪郭は必要ない)のみが必要なケースでは、2つめのパラメータにcv2.RETR_EXTERNALを渡す。 するとhierarchyに一番外部の輪郭のみのリストが返ってくるので、個数を数えてその分だけの輪郭データだけを返すようになる。 OpenCV3系では戻り値が変わって最初に画像を返すようになったので、OpenCV2系の場合は注意が必要。
■コマの輪郭だけを得、その外接矩形を取得する
def extract_rects_from_controus(contours, min_perimeter, max_perimeter): frames = [] for contour in contours: frame = cv2.minAreaRect(contour) center, size, angle = frame # 縦・横が逆になっている場合、90度回転させる if angle < -45: size = tuple(reversed(size)) angle = angle + 90 w, h = size perimeter = 2 * (w + h) if min_perimeter < perimeter < max_perimeter and abs(angle) < 3.0 and 0.1 <= min(w, h) / max(w, h) <= 1.0: frames.append((center, (w + 2, h + 2), angle)) # パディングを加える return frames
輪郭の外接矩形を取得し、その矩形の、周長、角度、縦横比でフィルタを掛け、コマの輪郭だけを抽出をしてみようという試み。
■コマをソートする
def cmp_frame(tolerance): def _cmp(lhs, rhs): return (lhs > rhs) - (lhs < rhs) def _cmp_frame(lhs, rhs): if lhs[0] == rhs[0]: return 0 x1, y1 = lhs[0] x2, y2 = rhs[0] if abs(x1 - x2) < tolerance: return _cmp(y1, y2) else: return _cmp(x2, x1) return _cmp_frame
コマを外接矩形の中心位置に基づいて並び替える。傾いている場合も考慮して、x方向は許容範囲内であれば同じx位置と見て、y方向のみで比較させている。
rects = sorted(rects, key=cmp_to_key(cmp_frame(tolerance)))
python3系ではsortedにcmpを渡せなくなってるのでfunctools.cmp_to_keyを使用。python2系の場合は直接cmpに渡す。
■コマの部分を切り抜く
def cut_frame(image, rect): center, size, angle = rect size = int(np.round(size[0])), int(np.round(size[1])) box = cv2.boxPoints(rect) M = cv2.getAffineTransform(np.float32(box[1:4]), np.float32([[0, 0], [size[0], 0], [size[0], size[1]]])) return cv2.warpAffine(image, M, size)
アフィン変換で傾きを直しつつ切り抜いていく。
0 notes
Video
instagram
Bye bye human !!!😋🤖 #quadruped #tensorflow #convolutionalneuralnetwork #inversekinematics #arduino #artificialvision # 3dprinted #raspberrypi3 #openCV3 #python #pandas #matplotlib #numpy #neuralnetworks #machinelearning #deeplearning#人工知能
#python#machinelearning#matplotlib#opencv3#raspberrypi3#neuralnetworks#人工知能#numpy#artificialvision#quadruped#convolutionalneuralnetwork#pandas#inversekinematics#arduino#deeplearning#tensorflow
0 notes
Text
Python Türkiye
http://www.python.tc/python-gta-5-oynuyor/
Python GTA 5 Oynuyor!
Python GTA 5 Oynuyor!
Harrison Kinsley GTA5 için yapay zeka robotu üretmek için çalışmalara girdi. Yaratıcılık konusunda muhteşem, noktaya geldiğini söyleyebilirim :) Ne fikir ama, python programlama dilini kullanarak GTA 5 oynamak! OpenCV kütüphanesini çok iyi etkin kullanarak, GTA 5 botunu hazırlamayı...
0 notes
Text
OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる
数度のトライを経て、OpenCVのバージョン3.3.0でやっとsfmモジュールのビルドが通ったわけです。 https://blog.negativemind.com/2017/08/11/opencv3-3-0-with-sfm-module/ ようやくサンプルを試す段階に来た。参考にしてるQiita記事の後編へやっと進める。↓ http://qiita.com/ChaoticActivity/items/178d23508b92a09e59ea 記事によると、サンプルを動かすためにまたいくつか手を加える必要がある(笑) (more…)
View On WordPress
0 notes