IT 지식 창고
-
(python) image를 배열로 변환할 때IT 지식 창고 2020. 8. 25. 23:26
보통 image는 0~255의 값을 가지기 때문에, image관련 라이브러리에서 배열로 처리하기 위해서 정수타입이 uint8인 경우에 처리하는 게 간단합니다. 물론 알아서 잘 처리해주는 경우도 있지만, image를 배열로 변환하여 이미지처리를 할 경우 uint8의 형태로 미리 바꿔 놓는 것이 제일 좋습니다. from PIL import Image img = Image.open(test.png) np.array(img, dtype='uint8') opencv로 image를 여는 경우 배열로 return이 되지만, PIL 라이브러리를 활용할 경우는 Image로 열려서 다시 배열로 변환 해줘야 합니다. 이럴 때 보통 위와 같은 방식으로 uint8형태를 가지면서 배열로 변환하면 이미지처리하는데 헷갈림이 덜 합니다.
-
(OpenCV) adaptiveThreshold에서 block size 의미IT 지식 창고 2020. 8. 20. 18:19
https://stackoverflow.com/questions/47368311/on-which-basis-block-size-value-is-given-in-adaptive-threshold On which basis block size value is given in adaptive threshold? I am not really understanding the purpose of using block size in adaptive threshold. And also want to know on which basis a value is assigned as block size. Consider the code : gaussian=cv2. stackoverflow.com block size는 홀수의 값..
-
(keras) ImageDataGenerator에서 train, test 나누기IT 지식 창고 2020. 8. 19. 17:54
https://stackoverflow.com/questions/42443936/keras-split-train-test-set-when-using-imagedatagenerator Keras split train test set when using ImageDataGenerator I have a single directory which contains sub-folders (according to labels) of images. I want to split this data into train and test set while using ImageDataGenerator in Keras. Although model.fit()... stackoverflow.com
-
(Python) 기본 경로 설정 방법IT 지식 창고 2020. 8. 18. 18:54
Python으로 프로젝트를 진행하거나 프로그램을 만든다고 할 경우 main이 실행되는 파일을 기준으로 경로를 설정합니다. 그럴 때 기본경로를 설정하는 방법은 아래와 같습니다. if getattr(sys, 'frozen', False): os.chdir(os.path.dirname(sys.executable)) else: os.chdir(os.path.dirname(os.path.abspath(__file__))) 구체적인 내용은 각 함수별로 검색해보는 것이 좋을 듯하며, 많은 시행착오를 겪은 결과 위와 같이 설정하면 왠만하면 실행되는 파일기준으로 에러 없이 기본경로 설정이 가능합니다.
-
(OpenCV) 색 채우기IT 지식 창고 2020. 8. 18. 18:03
https://opencv-python.readthedocs.io/en/latest/doc/09.imageThresholding/imageThresholding.html#cv2.threshold 이미지 임계처리 — gramman 0.1 documentation 기본 임계처리 이진화 처리는 간단하지만, 쉽지 않은 문제를 가지고 있다. 이진화란 영상을 흑/백으로 분류하여 처리하는 것을 말합니다. 이때 기준이 되는 임계값을 어떻게 결정할 것인지가 중 opencv-python.readthedocs.io 임계처리 후 https://docs.opencv.org/4.3.0/d7/d1b/group__imgproc__misc.html#gaf1f55a048f8a45bc3383586e80b1f0d0 OpenCV: Misce..
-
(model) Mask_RCNN GPU 메모리 최적화IT 지식 창고 2020. 8. 16. 22:35
Image Detection 모델 중에 Mask RCNN의 모델은 생각보다 꽤 무거운 모델입니다. 그러다보니, 고가의 GPU환경이 아닌 곳에서 모델을 사용하려면 GPU 메모리가 부족한 현상을 가지게 됩니다. 본 깃허브에는 GPU를 최적화 하는 방법을 적어놨으며, google colab에서도 힘겹게 사용하면서 경험했기에 간단히 번역해서 정리 해두려고 합니다. 아무리 최소화해봐도 GPU 메모리가 4기가인 곳에선 out of memory error가 뜨더군요,,, 원문 : https://github.com/matterport/Mask_RCNN/wiki matterport/Mask_RCNN Mask R-CNN for object detection and instance segmentation on Keras a..
-
(Python) try vs if 써야 하는 상황IT 지식 창고 2020. 8. 11. 22:45
원문 : https://stackoverflow.com/questions/1835756/using-try-vs-if-in-python Using try vs if in python Is there a rationale to decide which one of try or if constructs to use, when testing variable to have a value? For example, there is a function that returns either a list or doesn't return a va... stackoverflow.com 문득, try와 if를 쓰는 상황은 어떨 때이며 코딩하는 사람의 스타일에 따라 다르게 사용되는 것인가를 근본적으로 알아보고 싶어졌습니다. Pyth..
-
(Python) ClassName(object) vs ClassName 차이IT 지식 창고 2020. 8. 11. 18:48
원문 : https://stackoverflow.com/questions/4015417/python-class-inherits-object python에서 class를 만들 때 classname(object) : 를 하는 경우가 있고, classname : 하는 경우가 있습니다. stackoverflow에서 이를 대표적으로 설명해놓은 글이 있는데, 간단히 핵심만 적어보고자 합니다. 우선 Python3에서는 Python2간의 호환성을 제외하고는 이유가 없으며, Python2에서는 많은 이유가 있습니다. Python 3.x class ClassName1: pass class ClassName2(object): pass class ClassName3(): pass 위와 같은 경우에 [object in cls...