본문 바로가기

전체 글

ch12 polygon #python import cv2import numpy as npdef set_label(img, pts, label): rc = cv2.boundingRect(pts) cv2.rectangle(img, rc, (0, 0, 255), 1) cv2.putText(img, label, rc[:2], cv2.FONT_HERSHEY_PLAIN, 1, (0, 0, 255))def main(): img = cv2.imread("D:\\projects\\SampleCode\\006939-master\\ch12\\polygon\\polygon.bmp", cv2.IMREAD_COLOR) if img is None: print("Image load failed!") re.. 더보기
ch12 labeling #python import cv2import numpy as npdef labeling_basic(): data = np.array([ [0, 0, 1, 1, 0, 0, 0, 0], [1, 1, 1, 1, 0, 0, 1, 0], [1, 1, 1, 1, 0, 0, 0, 0], [0, 0, 0, 0, 0, 1, 1, 0], [0, 0, 0, 1, 1, 1, 1, 0], [0, 0, 0, 1, 0, 0, 1, 0], [0, 0, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0] ], dtype=np.uint8) * 255 src = data.astype(np.uint.. 더보기
ch12 findcts #python import cv2import numpy as npdef contours_basic(): src = cv2.imread("D:\\projects\\SampleCode\\006939-master\\ch12\\findcts\\contours.bmp", cv2.IMREAD_GRAYSCALE) if src is None: print("Image load failed!") return contours, _ = cv2.findContours(src, cv2.RETR_LIST, cv2.CHAIN_APPROX_NONE) dst = cv2.cvtColor(src, cv2.COLOR_GRAY2BGR) for contour in contours: .. 더보기
ch11 threshold #python import cv2def erode_dilate(): src = cv2.imread("D:\\projects\\SampleCode\\006939-master\\ch11\\morphology\\milkdrop.bmp", cv2.IMREAD_GRAYSCALE) if src is None: print("Image load failed!") return _, bin = cv2.threshold(src, 0, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU) dst1 = cv2.erode(bin, None) dst2 = cv2.dilate(bin, None) cv2.imshow("src", src) cv2.ims.. 더보기
ch11 morphology #python import cv2def erode_dilate(): src = cv2.imread("D:\\projects\\SampleCode\\006939-master\\ch11\\morphology\\milkdrop.bmp", cv2.IMREAD_GRAYSCALE) if src is None: print("Image load failed!") return _, bin = cv2.threshold(src, 0, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU) dst1 = cv2.erode(bin, None) dst2 = cv2.dilate(bin, None) cv2.imshow("src", src) cv2.ims.. 더보기
ch11 adaptive #python import cv2def on_trackbar(pos): global src bsize = pos if bsize % 2 == 0: bsize -= 1 if bsize // C++#include "opencv2/opencv.hpp"#include using namespace cv;using namespace std;void on_trackbar(int pos, void* userdata);int main(){ Mat src = imread("sudoku.jpg", IMREAD_GRAYSCALE); if (src.empty()) { cerr C++ Code 출처 : OpenCV 4로 배우는 컴퓨터 비전과 머신 러닝 - 황선규 저 더보기
ch10 inrange #python import cv2import numpy as nplower_hue, upper_hue = 40, 80src = cv2.imread("D:\\projects\\SampleCode\\006939-master\\ch10\\inrange\\candies.png", cv2.IMREAD_COLOR)def on_hue_changed(_=None): global lower_hue, upper_hue lowerb = np.array([lower_hue, 100, 0]) upperb = np.array([upper_hue, 255, 255]) mask = cv2.inRange(src_hsv, lowerb, upperb) cv2.imshow("mask", mask)if src is.. 더보기
ch10 colorOp #pythonimport cv2import numpy as npdef color_op(): img = cv2.imread("D:\\projects\\SampleCode\\006939-master\\ch10\\ColorOp\\butterfly.jpg", cv2.IMREAD_COLOR) if img is None: print("Image load failed!") return pixel = img[0, 0] b1, g1, r1 = pixel[0], pixel[1], pixel[2] ptr = img[0] b2, g2, r2 = ptr[0][0], ptr[0][1], ptr[0][2]def color_inverse(): src = cv2.imrea.. 더보기