반응형

한빛미디어에서 나온 컴퓨터비전과 딥러닝 책을 보고 있다.

개발환경을 설치하는 과정을 적어본다.

2.2 장에서 개발환경을 설치하는 과정이 나온다.

우선 윈도우를 설치하면 python이 3.13.5가 설치되어 있으며, tensorflow를 설치하기 위해서는 python3.10.x 버전이 필요하다.

따라서 가상 환경을 생성하는 것이 필요하다. 이를 위해 아나콘다를 먼저 설치한다.

아나콘다를 설치하기 위해서는 아나콘다 공식 사이트(https://www.anaconda.com)에 접속해 설치한다.

설치를 마치면 윈도우 시작 버튼을 누르고 Anaconda Prompt를 선택한다.

그러면 아래와 같은 console 창이 띄워지고 prompt는 (base) C:\Users\user>가 된다.

python 버전을 확인하기 위해 python --version 명령어를 치면 다음 그림과 같이 Python 3.13.5가 기본으로 동작하는 것을 알 수 있다.

tensorflow는 python 3.10 버전에서 동작하므로 가상환경을 만들어 사용한다.

(base) C:\Users\user> conda create -n tf310 python=3.10을 입력한다.

그러면 tf310 가상환경이 생성된다.

(base) C:\Users\user> conda activate tf310을 입력하여 가상환경 tf310을 활성화 한다.

tf310 가상환경은 다음과 같이 python 3.10.18에서 동작하는 것을 확인할 수 있다.

opencv와 딥러닝을 사용하기 위하여 모듈을 설치한다

(tf310) C:\Users\user>pip install tensorflow

(tf310) C:\Users\user>conda install spyder

(tf310) C:\Users\user> pip install opencv-python

spyder를 실행

책에 있는 예제 프로그램 2-2를 실행해 본다.

나는 Downloads 폴더에 예제 소스를 다운로드하여 저장하고 spyder에서 폴더를 불러와 실행하였다.

프로그램 7-6을 수행

pip install matplotlib를 수행하여 필요한 라이브러리를 설치하고 커널을 restart

다시 프로그램 7-6을 수행

결과가 위 그림과 같이 나왔다.

PC에서 실행시 GPU를 사용하지 않고 CPU만 사용하는 것 같다. 관리자로 확인하니 CPU 부하가 100%에 가깝고, GPU는 거의 0%에 가까웠다.

 

반응형

'Python' 카테고리의 다른 글

아나콘다 설치하기  (0) 2025.09.17
python에서 MySQL 연동하여 테이블 검색  (0) 2023.01.17
python mysql 연동  (0) 2023.01.17
[프로그램 1] 다이어몬드 출력  (0) 2023.01.14
Posted by 세상을 살아가는 사람
,

아나콘다 설치하기

Python 2025. 9. 17. 23:16
반응형

Open CV를 공부하기 위해 한빛 아카데미 출판사에서 펴낸 "컴퓨터 비전과 딥러닝" 책을 공부한다.

프로그램 환경을 설치한다.

[파이썬 설치하기]

  여기서는 아나콘다를 설치하기를 권장하고 있다. 가상환경을 생성하고 그 속에서 수행하는 것을 권장하고 있다.

1. 아나콘다 설치하기

  - 아나콘다 공식 사이트(https://www.anaconda.com)에 접속해 Free Download 메뉴를 선택한다.

    Skip registration을 선택한 Distribution Installers의 Download 버튼을 클릭하여 다운로드 받는다.

    다운로드 받은 파일은 Anaconda3-2025.06-0-Windows-x86_64로 Anaconda Installer이다.

  - 더블 클릭하여 설치한다. (컴퓨터에는 이미 Python 3.10.6이 설치되어 있었다.)

  - Next 버튼을 선택한다.

  - I Agree 버튼을 선택한다.

  - Just Me (recommended)를 선택하고 Next 버튼 클릭한다.

  - 기본으로 설정된 Destination Folder를 변경하지 않고 Next 버튼을 클릭한다.

  - Install 버튼을 클릭한다.

  - Next 버튼을 클릭한다.

  - Next 버튼을 클릭한다.

  - 설치가 완료되었다.

  - 위와 같이 시작 메뉴에 Anaconda (anaconda3) 폴더가 생기고, 그 밑에 여러 메뉴들이 생겼다.

2. 가상 환경 생성하기

  - 위의 시작 메뉴에서 Anaconda Prompt(anaconda)를 선택하면 다음 그림과 같이 기본적으로 만들어진 base라는 가상환경이 나타난다.

  - 새로운 가상 환경 cv를 생성한다.

    + (base) C:\Users\user> conda create -n cv [enter]

    + 설치가 되고 다음과 같이 화면에서 y를 선택한다.

    + cv 가상 환경으로 이동하기 위하여 conda activate cv 명령어를 입력

    + 프롬프트가 (cv)로 변경된 것을 확인할 수 있다.

3. 가상 환경에서 사용할 통합 개발 환경과 라이브러리 설치하기

  - (cv) C:\Users\user> conda install spyder    // cv 가상 환경에 스파이더 설치

  - anaconda의 버전이 새로운 버전이 있어 update를 수행

    + (cv) C:|Users\user> conda update -n base -c defaults conda

  - (cv) C:\Users\user> pip install opencv-python    // cv 가상 환경에 OpenCV 설치

  - (cv) C:\Users\user> pip install tensorflow    // cv 가상 환경에 텐서플로 설치

  - (cv) C:\Users\user> conda list    // cv 가상 환경에 설치된 목록 보기

  - 이제 프로그래밍 환경이 모두 갖추어졌다.

    + 위 그림과 같이 윈도우 시작 메뉴에서 Spyder (cv)를 선택한다.

반응형

'Python' 카테고리의 다른 글

윈도우 환경에서 tensorflow 설치  (0) 2025.10.05
python에서 MySQL 연동하여 테이블 검색  (0) 2023.01.17
python mysql 연동  (0) 2023.01.17
[프로그램 1] 다이어몬드 출력  (0) 2023.01.14
Posted by 세상을 살아가는 사람
,
반응형

이전 게시글에서 Python에서 pymysql module을 사용하여 MySQL 테이블에 데이터를 삽입하는 방법을 확인하였었다.

이번 게시글에서는 테이블에 저장된 데이터를 검색하여 출력해 본다.

import pymysql

# 변수 선언 부분
conn, cursor = None, None
data1, data2, data3, data4 = "", "", "", ""
row = None

# 메인 코드 부분
conn = pymysql.connect(host='localhost', user='study', password='study', db='studydb', charset='utf8')
cursor = conn.cursor()

cursor.execute("select * from userTable")

print("사용자ID    사용자이름    이메일            출생연도")
print("--------------------------------------------------------")

while (True) :
    row = cursor.fetchone()
    if row == None :
        break;
    data1 = row[0]
    data2 = row[1]
    data3 = row[2]
    data4 = row[3]
    print("%7s   %12s   %15s   %5d" % (data1, data2, data3, data4))

conn.commit()
conn.close()

cmd창에서 수행 결과는 아래와 같다. 역시 idle에서는 실행되지 않았다. 아마 sys.path에 들어있지 않아서 그런 것 같다.

반응형

'Python' 카테고리의 다른 글

윈도우 환경에서 tensorflow 설치  (0) 2025.10.05
아나콘다 설치하기  (0) 2025.09.17
python mysql 연동  (0) 2023.01.17
[프로그램 1] 다이어몬드 출력  (0) 2023.01.14
Posted by 세상을 살아가는 사람
,

python mysql 연동

Python 2023. 1. 17. 16:48
반응형

Python에서 MySQL 데이터베이스를 사용하는 방법을 적어본다.

- 환경

  + Python 3.9.10

  + MySQL : 8.0.29

  + anaconda3에서 pymysql 모듈 설치

- idle에서 파일 작성하여 run module 실행하면 pymysql 모듈이 없다고 동작하지 않음

- cmd 창에서 python Code13-02.py 입력하여 실행하면 정상 동작

[테이블 생성 및 데이터 초기화]

테이블 생성을 위해 사용한 SQL문은 아래와 같다.

create table userTable (
	id varchar(10),
    userName varchar(15),
    email varchar(20),
    birthYear int
);

insert into userTable values ('john', 'John Bann', 'john@naver.com', 1990);
insert into userTable values ('kim', 'Kim Chi', 'kim@daum.net', 1992);
insert into userTable values ('lee', 'Lee Pal', 'lee@paran.com', 1988);
insert into userTable values ('park', 'Park Su', 'park@gmail.com', 1980);

select * from userTable;

[userTable에 사용자 정보를 터미널에서 입력으로 받아 저장] : Code13-01.py

import pymysql

# 변수 선언 부분
conn, cursor = None, None
data1, data2, data3, data4 = "", "", "", ""
sql = ""

# 메인 코드 부분
conn = pymysql.connect(host='localhost', user='study', password='study', db='studydb', charset='utf8')
cursor = conn.cursor()

while (True):
    data1 = input("사용자ID ==> ")
    if data1 == "":
        break;
    data2 = input("사용자이름 ==> ")
    data3 = input("이메일 ==> ")
    data4 = input("출생년도 ==> ")
    sql = "insert into userTable values ('" + data1 + "','" + data2 + "','" + data3 + "','" + data4 + "')"
    cursor.execute(sql)
conn.commit()
conn.close()

cmd 창을 사용하여 Code13-01.py를 실행한 결과는 아래와 같다.

MySQL workbench를 사용하여 데이터를 확인하면 다음과 같이 잘 저장됨을 알 수 있다.

 

반응형

'Python' 카테고리의 다른 글

윈도우 환경에서 tensorflow 설치  (0) 2025.10.05
아나콘다 설치하기  (0) 2025.09.17
python에서 MySQL 연동하여 테이블 검색  (0) 2023.01.17
[프로그램 1] 다이어몬드 출력  (0) 2023.01.14
Posted by 세상을 살아가는 사람
,
반응형

우재남씨가 지은 "파이썬 for Beginner"에 나오는 [프로그램 1] 다이어몬드 출력 문제를 풀어본다.

문제를 분석해 본다. "  "(스페이스)를 출력하는 부분과 "*"(다이어몬드)를 출력하는 부분으로 나누어서 다음과 같이 i가 0에서 부터 8까지 변경될 경우 그에 따른 변화를 테이블로 작성해 보았다.

i 스페이스 from 스페이스 to 다이어몬드 from 다이어몬든 to 비고
0 0 0 3 4-i-1 4 4-i 4 4+i  
1 0 0 2 4-i-1 3 4-i 5 4+i  
2 0 0 1 4-i-1 2 4-i 6 4+i  
3 0 0 0 4-i-1 1 4-i 7 4+i  
4 -1 4-i-1 -1 4-i-1 0 4-i 8 4+i  
5 0 0 0 i-4-1 1 -(4-i) 7 12-i  
6 0 0 1 i-4-1 2 -(4-i) 6 12-i  
7 0 0 2 i-4-1 3 -(4-i) 5 12-i  
8 0 0 3 i-4-1 4 -(4-i) 4 12-i  

다이어몬드를 출력하는 특성상 출력하는 부분이 i가 0~4까지는 4-i부터 4+i까지 출력이 되어야 하고, i가 5~8까지는 -(4-i)부터 12-i까지 출력이 되어야 한다.

이를 스프레드 시트를 사용하여 표현하면 다음과 같이 나타낼 수 있다.

위의 그래프는 별을 출력하는 시작과 끝을 나타내는 것이다. 첫번째(i = 0)부터 다섯번째(i = 4)까지는 시작은 -i + 4로 나타낼 수 있고, 끝은 i + 4로 나타낼 수 있다. 또 다섯번째(i = 4)부터 아홉번째(i = 8)까지는 시작은 i - 4이고 끝은 -i + 12이다.

이는 절대값을 사용하면 최소값은 | i - 4 |, 최대값은 - | i - 4 | + 8로 나타낼 수 있다. 이를 그래프를 나타내는 절대값과  이동, 대칭으로 나타내면 다음 그림과 같다.

y = | x |를 나타내는 그래프를 오른쪽으로 4만큼 이동시키면 시작을 나타내는 수식(함수 y = | x - 4 |)이 되고, 이를 x축으로 대칭을 시켜서 y = - | x - 4 |로 변경하고 또 y축으로 8만큼 이동시키면 끝을 나타내는 수식(함수 y = - | x - 4 | + 8이 된다.

따라서 다이어몬드를 출력하는 프로그램은 다음과 같이 프로그램할 수 있다.

먼저 0~8까지 줄을 나타내는 반복문을 사용하고 다시 스페이스를 출력하는 부분과 다이어먼드를 출력하는 부분으로 나눌 수 있으며, 다이어몬드를 출력하는 시작과 끝을 위의 수식을 사용하여 나타내면 된다.

for i in range(0, 9, 1):
    k = abs(i - 4)
    l = - abs(i - 4) + 8
    for j in range(0, l + 1, 1):
        if j >= k and j <= l:
            print('\u2605', end='')
        else:
            print("  ", end='')
    print("")

이를 실행하면 다음과 같이 다이어몬드를 출력하는 것을 알 수 있다.

하나의 문제를 푸는 것이 이렇게 복잡하고, 이를 설명하는 것이 또한 복잡하다. 또 이렇게 설명을 한다고 했을 때 이해를 잘 할 수 있는지도 궁금하다. 조금더 이해가 될 수 있도록 작성을 해 보았다.

반응형

'Python' 카테고리의 다른 글

윈도우 환경에서 tensorflow 설치  (0) 2025.10.05
아나콘다 설치하기  (0) 2025.09.17
python에서 MySQL 연동하여 테이블 검색  (0) 2023.01.17
python mysql 연동  (0) 2023.01.17
Posted by 세상을 살아가는 사람
,