scikit-image로 이미지 처리
6799 단어 Friday-IO
기계를 열심히 공부하는 사람, 진정으로 배우고 싶은 사람은 브라우저를 닫고 다양한 정보를 알려주세요.
왜냐하면 관심 있는 사람이 분위기를 잡기 위해서 만져보는 거니까.
관심 있는 사람들의 참고가 될 수 있다면'어의 글자'다.
목표
지난번 Friday-IO에서 접한 머신러닝에 대한 지식이 제로인 머신러닝 프로그램 라이브러리, scikit-learn에 감동했습니다.
나는 이번에 영상 처리를 시도해 보고 싶다.
헬로 프로젝트 프로필 사진을 학습시켜 헬로 프로젝트 얼굴의 특징을 찾게 하는 것이 목표다.
샘플이 너무 적고, 이미지 성형 따위는 자기도 나무랄 데가 많다
소홀히 하다.
http://kazoo04.hatenablog.com/entry/2015/10/09/120000
scikit-image로 이미지 처리
우선 학생들이 학습할 수 있는 특징량의 데이터 집합을 만들어야 한다
이것은scikit-image라는 이미지 처리 라이브러리도 있습니다. 제가 한번 해 보겠습니다.
설치하다.
$ pip install scikit-image
어쨌든 이 바나나부터 읽어볼게요.from skimage import data
feature = data.imread('./banana.jpg')
featurearray([[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]],
[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
...,
우연히 하얀 부분은 이해하기 쉽지만 그림마다 1픽셀의 RGB 값이 들어간다.그림의 경우 이렇게 수치화 처리를 해서 데이터 집합을 만든다.
무교사 k평균법(k-means)
부정확한 데이터 세트를 준비했으니 선생님이 있어도 공부할 수 있다
이번에는 여러분들이 자신의 특징을 찾아내길 바랄 뿐이기 때문에 저는 교사가 되지 않겠습니다.
교사가 없는 학습 방법에서 기본적인 k평균법을 사용한다.
의 내용은 헬로 프로 55명의 프로필 사진이다.
import os
import numpy as np
from skimage import data
# 画像読み込み
feature = np.array([data.imread(f'./img/{path}') for path in os.listdir('./img')])
나는 그를 이렇게 공부하게 하려고 했는데 결국 욕을 먹었다.ValueError: Found array with dim 3. Estimator expected <= 2.
읽는 배열이 3차원 배열이기 때문이다.scikit-learn에서 준비한 샘플 데이터 집중
손으로 쓴 문자 이미지의 데이터가 있으니 그것에 따라 2차원 배열로 바꾸면 된다.
# 3次元配列を2次元配列に
feature = feature.reshape(len(feature), -1).astype(np.float64)
# 学習
model = KMeans(n_clusters=1).fit(feature)
k평균법은 집합 알고리즘이라고 불리는 것 같지만 잘 모르겠어요.Maciej Pacula k-means clustering example (Python)
어쨌든 기준점을 무작위로 결정한 다음에 가장 가까운 집단으로 만든다.
이번엔 하나면 돼(?)따라서 KMeans()의 매개변수는 nclusters=1을 사용하여 지정합니다.
이미지의 데이텀 점은 이미지입니다.
스코어
score 함수에서 오차와 정확한 라벨의 일치율을 얻을 수 있습니다.
잘 모르기 때문에 먼저 실행합니다.
첫 번째 그림을 배울 수 있는 데이터를 제공합니다.
model.score([feature[0]])
-682826994.80462933
이 수수께끼와 같은 부동점수와 기준점의 거리는 매우 가깝다.왜 이런 값이 있는지 알고리즘을 이해해야 하기 때문에 무시한다.
값이 0에 가까울수록 데이텀 점에 가까워집니다(피쳐 유사).
남은 건 그냥 그림만 보여주고 놀았으니까 끝났어.
Reference
이 문제에 관하여(scikit-image로 이미지 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/wtnb93/items/65633bcbe2942b440128텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)