Data Science

Deep Learning/from scratch I

[밑바닥부터 시작하는 딥러닝 - 3장 신경망]

y= h(b+w1x1+w2x2) 가중치곱에 편향을 더한후 활성화 함수를 거쳐 output으로 출력됨. 활성화 함수는 말 그대로 입력신호의 총합이 활성화를 일으키는지를 정하는 역할을 함. 활성화 함수는 비선형함수로 분류됨 활성화 함수 1. 시그모이드 함수 신경망에서 자주이용되는 함수이다 def sigmoid(x): return 1/ (1+np.exp(-x)) 2. 계단함수 0이하는 0, 양수는 1로 나타나는 함수다. 넘파이 배열에 관하여 다음과 같이 구현함 def step_function(x): y = x>0 return y.astype(np.int) return y.astype(np.int)는 boolean 형태로 true false가 나올때, 이것을 1,0으로 변환함 시각화 하면 다음과 같이 나온다 i..

Deep Learning/from scratch I

[밑바닥부터 시작하는 딥러닝 - 2장 퍼셉트론]

가중치 w1과 w2는 각 입력신호가 결과에 영향을 주는 영향력(중요도) 조절 편향(b) 는 뉴런이 얼마나 쉽게 활성화(결과를 1로 출력) 하느냐를 조정하는 매개변수 AND 게이트 전리표 x1 x2 y 0 0 0 1 0 0 0 1 0 1 1 1 def AND(x1,x2): w1,w2,theta = 0.5,0.5,0.7 tmp = x1*w1 + x2*w2 if tmp = theta: return 1 NAND 게이트 전리표 (AND의 반대) x1 x2 y 0 0 1 1 0 1 0 1 1 1 1 0 def NAND(x1,x2): x= np.array([x1,x2]) w= np.array([-0.5,-0.5]) b=0.7 tmp = np.sum(w*x)+b if tmp

Python

Window 11 python tensorflow gpu 설치

저어는 최근에 레노버 LOQ 노트북을 영끌해서 샀음 작년에 Yolo v1 구현할때 nvidia driver 때문에 구현에 실패한 적이 있어 이 한을 풀고자 노트북 오자마자 tensorflow gpu 셋팅함 일단 내가 갖춘 환경은 window 11 / rtx4060 laptop gpu에 맞는 nvidia driver /python 3.9.7/ cuda 12.1/ cudnn 8.8.1 / tensorflow는 그냥 pip install 함 아마 2.13버전이었음 이렇게 깔음 벗 계속 gpu 인식을 못하는거임... 3일동안 진짜 깔고 지우고를 백만번 반복함 그러던 중 발견한 오아시스 같은 글 진짜 이대로 했더니 마법같이 되는거임 뭔가 저 4번째 코드가 cuda와 cudnn 버전을 같이 맞춰준것 같았음 누군가는..

Deep Learning/Computer Vision

얼굴 탐지

import numpy as np import cv2 import matplotlib.pyplot as plt %matplotlib inline nadia = cv2.imread('../DATA/Nadia_Murad.jpg',0) denis = cv2.imread('../DATA/Denis_Mukwege.jpg',0) solvay = cv2.imread('../DATA/solvay_conference.jpg',0) plt.imshow(nadia,cmap='gray') plt.imshow(denis,cmap='gray') plt.imshow(solvay,cmap='gray') 이렇게 3개의 사진을 각각 불러옴. 우선 필요한 것은 classifier를 만들고 XML classifier를 진행하는것이다 fac..

Deep Learning/Computer Vision

feature matching

feature matching에는 세가지가 있다 Brute -Force Matching with ORB Descriptors Brute-Force Matching with SiFT Descriptors and Ratio Test FLANN based Matcher import cv2 import numpy as np import matplotlib.pyplot as plt %matplotlib inline def display(img,cmap='gray'): fig = plt.figure(figsize=(12,10)) ax = fig.add_subplot(111) ax.imshow(img,cmap='gray') reeses = cv2.imread('../DATA/reeses_puffs.png',0) di..

Deep Learning/Computer Vision

Contour Detection

import cv2 import numpy as np import matplotlib.pyplot as plt %matplotlib inline img = cv2.imread('../DATA/internal_external.png',0) plt.imshow(img,cmap='gray') grayscale로 설정함. openCV의 윤곽 함수가 좋은 점은 내부 윤곽뿐만 아니라 얼굴이나 삼각형, 피자와 같은 외부 윤곽도 감지할 수 있음. cv2.RETR_EXTERNAL:외부 contour만 추출 cv2.RETR_CCOMP: 두 개의 계층으로 구성된 내외부 contour 모두 추출 cv2.RETR_TREE: 나무 그래프로 구성된 내외부 contour 모두 추출 cv2.RETR_LIST: 내외부 관계 없이 모든 ..

Deep Learning/Computer Vision

그리드 검출

import cv2 import matplotlib.pyplot as plt %matplotlib inline flat_chess = cv2.imread('../DATA/flat_chessboard.png') plt.imshow(flat_chess,cmap='gray') 그리드 검출 시 그리드가 본질적으로 체스판같이 정형화되어야함 found, corners = cv2.findChessboardCorners(flat_chess,(7,7)) 그리드 사이즈 지정 전체 이미지가 8*8라면, 끝에 있는 가장자리를 탐지하기 위해 7*7로 지정함 found는 체스보드 타입의 모서리를 찾았는지를 나타냄 if found: print('OpenCV was able to find the corners') else: prin..

Deep Learning/Computer Vision

엣지 검출

Canny Edge detection 검출기에 탑재된 기술을 적용하기 전에 여러분의 스무딩 및 블러링 기술을 적용하는 경우가 많을 것 가우스 필터를 적용하여 이미지를 스무딩하면 이미지의 강도 증감률을 찾을 수 있음. 다음 단계 알고리즘이 가장자리 검출에 대한 가짜 반응을 제거하기 위해 최대치가 아닌 억제를 실행 -> 그런 다음 잠재적 모서리를 선택하기 위해 이중 임계값을 적용 -> 모서리를 히스테리시스(hysteresis, 이력현상)로 추적 , 이때 강한 모서리에 연결되지 않은 다른 약한 모서리는 전부 억제되고 모서리 감지가 종료될 것 즉, 약한 모서리를 없애고 강한 모서리를 찾는 일종의 여과과정, 사용자가 낮은 임계값과 높은 임계값을 정해야 함 import cv2 import numpy as np im..

해파리냉채무침
'분류 전체보기' 카테고리의 글 목록 (11 Page)