반응형

Program 135

C# 병렬처리1 _ Parallel

오늘은 C#에 있는 병렬처리 Parallel 클래스에 대해서 알아보고자 합니다.현재 제가 하고 있는 프로젝트 중 그룹으로 묶인 도형을 Binary 처리된 이미지에 맞게Resize, Move, Rotate하는 메서드를 구현해야하는 작업이 생겼고,해당 메서드를 단순 for문을 사용해 구현했는데 당연하게도 메서드가 돌아가는 동안에는 Main UI 에 Lock이 걸려서 프로그램이 멈추는 현상이 나왔습니다.그래서 이걸 비동기 매서드로 만들어서 Main UI에 Lock이 걸리지 않도록 할지혹은 여러개의 쓰레드를 만들어서 멀티쓰레드를 사용할지 고민이 되었습니다. 비동기 매서드로 만들자니 물론 기존메서드 실행시간보다는 단축되겠지만 순차적으로 처리해야하기 때문에확실하게 단축되지는 않을 것이라고 판단되엇고,비동기 매서드를..

Program/C# 2024.11.11

OPENCV 왜곡보정

기존에 사용하던 Opencv 보정함수는 단순히 cv2.Undistortion 함수였는데 UndistortImageOptimal 함수에 대해서도 알아보게 되었음. 또한 배경의 장애물들로 인한 cv2.FindChessboardCorners 인식이 저하되어해당 이미지들의 ChessboardCorner를 강제로 찾아내는 과정에 대해서도 알게되었음. 기존에는 FOV 800mm의 크지않은 ChessBoard를 사용하였기 때문에 큰 무리없이 이미지 촬영을 진행하였는데이번 프로젝트에서는 FOV 3000mm의 넓은 CheckerBoard를 제작하여사용하였기 때문에 이미지 촬영이 쉽지 않았음.  위 이미지를 보면 알 수 있듯이 센터에서 촬영하는건 줄을 매달고 올라가지 않는 이상 불가능 하였음. 따라서 위 이미지를 사용하여..

Program/OPEN_CV 2024.10.29

[Python] Pandas 사용

Pandas를 사용할 때의 라이브러리는 아래 4개를 고정해서 사용한다. import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns 혹시 위 라이브러리들이 설치되어있지 않다면 !pip install numpy pandas matplotlib seaborn 으로 다중설치해줄 수 있다. 이제 실제로 Pandas를 가지고 데이터를 만들어보면 - DataFrame은 2차원테이블이고, 테이블의 한 줄 ( 행/열 )을 Series라고 한다. - Series의 모임이 곧 , Data Frame이 된다. pd.Series ( [1,3,5,6,8] ) 여기서 알 수 있는 것은 Series는 하나의 데이터 타입을 가진..

Program/파이썬 2023.01.17

[Python] Pandas

https://fastcampus.co.kr/courses/213915 커리어 성장을 위한 최고의 실무교육 아카데미 | 패스트캠퍼스 성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다. fastcampus.co.kr Pandas : Python Data Analysis Library . ( 정형 데이터 분석에 최적화되어있는 라이브러리 ) Pandas 특징 - 2009년에 100% 오픈소스가 되었습니다. - 벡터연산에 최적화 되어 있습니다. - 다양한 데이터 조작 기능을 제공합니다. Pandas 를 사용해야 하는 이유 1. 대부분의 정제된 데이터들은 테이블 형태로 표현됩니다. 이런 ..

Program/파이썬 2023.01.17

[Python] 웹 환경 이해

웹 구조는 어떻게 구성되어있는가? 일단 웹이 실제로 어떻게 만들어지는가? 우리가 www.naver.com 이라는 url을 창에 입력하게되면 네트워크를 타고 naver.com이라는 url을 가진 컴퓨터에 접속 요청을 하게 된다. 그러면 해당 컴퓨터에서는 접속에 대한 응답을 해주고 다시 역으로 돌아오게되는데 그렇게 되면 컴퓨터 인터넷으로 해당 주소에 접속을 할 수 있는 것. 그럼 우리가 받은 것은 과연 무엇일까? 우리는 크롬, 파이어폭스, 웨일 등에서 렌더링과정을 거치게 된다. 즉, 네이버에서는 위와같이 html이라는 규칙으로 만들어진 코드를 제공해주고 크롬, 파이어폭스, 웨일등의 도구에서 해당 html규칙을 렌더링을 해서 우리에게 보여주는 구조이다. 이게 우리가 보고있는 웹의 기본적인 구조이다. 요즘은 렌..

Program/파이썬 2023.01.16

[Python] 함수(Function)

프로그램에서의 함수는 '기능' 을 의미한다. 함수를 사용하는 중요한 이유는 재사용성 때문이다. 즉, 똑같은 구조의 코드가 반복되는 것을 피하기 위함이다. 예를들어 아래와같은 함수를 만든다고 한다면 def add ( a, b ) 라는 add라는 이름과 a,b 의 매개변수로 이루어진 함수를 만들 수 있다. 또한 파이썬이기 때문에 포맷은 아래와 같다. def add ( a, b ) : c = a + b return c * 이 전 글에서도 설명했듯이 문자열도 사용이 가능하다. Ex) add ( 'a' , 'b' ) = 'ab' 사칙연산에 관련된 함수를 모두 만들어보면 def sub ( a, b ) : return a - b def mul( a , b) : return a * b def div ( a, b ) :..

Program/파이썬 2023.01.09

[Python] 자료형 함수

숫자형 특수연산 a = 1 b = 2 a ** b # a를 b번 곱합것 a // b # a를 d로 나눈 몫 a % b # a를 b로 나눈 나머지 문자형 파이썬에서는 문자열도 사칙연산이 가능하다. s = "Hello" s1 = "World" s + s1 = "HelloWorld" s + ' ' + s1 = "Hello Wrold" s * 20 = "HelloHelloHelloHelloHello" len(s) = 5 문자열 Formatting f-string이라는 포맷이 있는데 해당 포맷을 강사님은 추천한다. fruit="사과", count = 4 print(f"{fruit}는 {count}개 있다.}") 이렇게 pirnt 뒤 f를 붙여준 뒤 포맷을 넣을 부분에 중괄호를 넣게되면 해당 변수를 사용할 수 있게..

Program/파이썬 2023.01.07

[Python] 반복문 ( for )

실제로 프로그램을 하면서 설비 프로그램에 while문을 써본적은 정말 거의 없는 것 같다. 거의? 그냥 한번도 안써본 것 같다. 설비에서 while문을 잘못쓰는 순간 무한루프에 빠져서 설비가 멈춰버리는 아주 위험한 상황이 올 수 있기 때문에 함부로 쓰지 못 한다. 뭐 사실 설비 뿐만 아니라 다른 어떤 상품을 만드는 프로그램에서든 while문을 함부러 쓰기는 굉장히 무섭다. 그래서 for문을 굉장히 많이 사용하고 있는데 C언어와 또 어떤 차이가 있는지 살펴보자 while문의 반복은 조건을 만족하는 동안에 계속되었지만 for문은 내가 지정한 횟수만큼만 반복을 진행한다. 파이썬은 반복 가능한 객체를 대상으로 수행되며, 연속형 데이터 타입 변수들이 여기에 해당된다고 한다. for 변수 in 리스트 ( 튜플, 문..

Program/파이썬 2023.01.07

[Python] 반복문 ( While )

https://fastcampus.co.kr/courses/213915 커리어 성장을 위한 최고의 실무교육 아카데미 | 패스트캠퍼스 성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다. fastcampus.co.kr 원하는 조건에 맞춰 반복문을 실행해보자 while statement while문은 C언어와 마찬가지로 조건을 만족할 떄 까지 반복으로 실행한다. 즉, 조건이 True일 동안에는 while문이 계속 반복한다고 보면 된다. 예를 들면 아래와같다. while ( a > 5) ... a ++ 과같은 구문이 있으면 a 가..

Program/파이썬 2023.01.07

[Python] 조건문(If)

https://fastcampus.co.kr/courses/213915 커리어 성장을 위한 최고의 실무교육 아카데미 | 패스트캠퍼스 성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다. fastcampus.co.kr 일단 나는 C++ 이 메인 이기 떄문에 강의에서 나온 IF조건문을 사용해본다면 if( a == 5 ) printf("True") 하지만 파이썬에서는 위와같은 방식이 아닌 if a == 5: printf(True) 라는 형식으로 if문을 사용할 수 있다. 여기서 중요한 것은 파이썬에서는 조건문을 사용할 때 무조건 : 이라는 ' 콜론 ' 형식을 사용해야하고 콜론을 사용하게..

Program/파이썬 2023.01.06
반응형