<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>나중에 내가 보려고 만든 블로그</title>
    <link>https://chonny.tistory.com/</link>
    <description>never be ordinary!</description>
    <language>ko</language>
    <pubDate>Tue, 21 Jul 2026 12:23:24 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>winches</managingEditor>
    <image>
      <title>나중에 내가 보려고 만든 블로그</title>
      <url>https://tistory1.daumcdn.net/tistory/4694967/attach/a457436d8d304b06a564c7db10078884</url>
      <link>https://chonny.tistory.com</link>
    </image>
    <item>
      <title>도커에서 바인드 마운트와 볼륨의 차이</title>
      <link>https://chonny.tistory.com/23</link>
      <description>&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;도커에서 Bind mounts와 volumes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;723&quot; data-origin-height=&quot;235&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UjV50/dJMcahEnu9G/8SYt0r7TBzd0brNz5gjJkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UjV50/dJMcahEnu9G/8SYt0r7TBzd0brNz5gjJkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UjV50/dJMcahEnu9G/8SYt0r7TBzd0brNz5gjJkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUjV50%2FdJMcahEnu9G%2F8SYt0r7TBzd0brNz5gjJkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;723&quot; height=&quot;235&quot; data-origin-width=&quot;723&quot; data-origin-height=&quot;235&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 마운트와 볼륨의 차이&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Volumes&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;볼륨은&amp;nbsp;컨테이너에&amp;nbsp;데이터를&amp;nbsp;영속적으로&amp;nbsp;저장할때&amp;nbsp;사용하는데&amp;nbsp;도커에&amp;nbsp;의해&amp;nbsp;생성되고&amp;nbsp;관리된다. &lt;br /&gt;볼륨을&amp;nbsp;생성하면&amp;nbsp;도커&amp;nbsp;디렉토리에&amp;nbsp;저장된다. &lt;br /&gt;그래서&amp;nbsp;이&amp;nbsp;볼륨을&amp;nbsp;컨테이너로&amp;nbsp;마운트&amp;nbsp;하면,&amp;nbsp;그&amp;nbsp;경로는&amp;nbsp;컨테이너에&amp;nbsp;마운트&amp;nbsp;된다. &lt;br /&gt;bind&amp;nbsp;mount와&amp;nbsp;비슷하지만&amp;nbsp;호스트&amp;nbsp;머신의&amp;nbsp;코어&amp;nbsp;기능과&amp;nbsp;분리된채&amp;nbsp;도커에&amp;nbsp;의해&amp;nbsp;관리된다는&amp;nbsp;것이&amp;nbsp;마운트와의&amp;nbsp;차이점이다. &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Bind mounts&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마운트는 호스트 머신에 있는 파일이나 디렉토리를 컨테이너로 마운트 하는것이고,&lt;br /&gt;반대로&amp;nbsp;볼륨은&amp;nbsp;호스트&amp;nbsp;도커&amp;nbsp;스토리지에&amp;nbsp;새로운&amp;nbsp;디렉토리가&amp;nbsp;생성되는&amp;nbsp;것이다. &lt;br /&gt;그래서&amp;nbsp;도커가&amp;nbsp;이&amp;nbsp;스토리지&amp;nbsp;경로를&amp;nbsp;생성,&amp;nbsp;유지하고&amp;nbsp;컨테이너는&amp;nbsp;표준파일시스템&amp;nbsp;operation을&amp;nbsp;통해&amp;nbsp;접근한다. &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;볼륨, 마운트 사용 필요한 경우&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;볼륨은 도커가 온전히 관리하므로, &lt;b&gt;호스트/컨테이너에서 파일에 직접 접근해야하는 경우&lt;/b&gt;에는 볼륨이 아닌 &lt;b&gt;마운트&lt;/b&gt;를 쓰는것이 적합하다. &lt;br /&gt;&lt;br /&gt;컨테이너에&amp;nbsp;직접적으로&amp;nbsp;데이터를&amp;nbsp;write하는&amp;nbsp;것&amp;nbsp;보다는&amp;nbsp;볼륨을&amp;nbsp;쓰는&amp;nbsp;것이&amp;nbsp;적합하다.&amp;nbsp; &lt;br /&gt;볼륨은 컨&lt;b&gt;테이너의 사이즈를 증가시키지 않기&lt;/b&gt; 때문에 &lt;b&gt;볼륨을 사용하면 속도가 더 빠르다&lt;/b&gt;. &lt;br /&gt;&lt;br /&gt;볼륨을 사용하는 &lt;b&gt;컨테이너가 운영되지 않아도&lt;/b&gt; 여전히 &lt;b&gt;볼륨은 도커에서 사용가능하고 자동으로 제거되지 않는다.&lt;/b&gt;&lt;br /&gt;그래서&amp;nbsp;사용하지&amp;nbsp;않는&amp;nbsp;볼륨은&amp;nbsp;제거가&amp;nbsp;필요한데,&amp;nbsp;docker&amp;nbsp;volume&amp;nbsp;prune&amp;nbsp;명령어를&amp;nbsp;사용한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;참고&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://docs.docker.com/engine/storage/volumes/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.docker.com/engine/storage/volumes/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://docs.docker.com/engine/storage/bind-mounts/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.docker.com/engine/storage/bind-mounts/&lt;/a&gt;&lt;/p&gt;</description>
      <category>Docker</category>
      <category>docker</category>
      <category>dockerbindmount</category>
      <category>dockerstorage</category>
      <category>dockervolume</category>
      <category>도커</category>
      <category>도커마운트</category>
      <category>도커바인드마운트</category>
      <category>도커볼륨</category>
      <category>도커사용</category>
      <category>도커스토리지</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/23</guid>
      <comments>https://chonny.tistory.com/23#entry23comment</comments>
      <pubDate>Fri, 5 Jun 2026 14:02:06 +0900</pubDate>
    </item>
    <item>
      <title>Docker compose에 대하여</title>
      <link>https://chonny.tistory.com/22</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;Docker Compose 공식 문서 보면서 정리해본 내용.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Docker Compose란 ?
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;도커 컴포즈는 여러 컨테이너를 실행하고 정의하는 툴이다. &lt;br /&gt;효율적인 개발과 배포를 위해 사용된다.&lt;br /&gt;전체 어플리케이션 스택 관리를 간편화해서 서비스, 네트워크, 볼륨을 하나의 yaml configuration 파일로 관리할수있다.&lt;br /&gt;기본 compose file 경로는 compose.yaml인데 compose.yml, docker-compose.yaml, docker-compose.yml 도 지원한다. 다양한 파일이 존재할때 가장 우선시 되는건 compose.yaml 파일이다.&lt;br /&gt;여러개의&amp;nbsp;yaml&amp;nbsp;파일&amp;nbsp;오버라이딩&amp;nbsp;하거나&amp;nbsp;append해서도&amp;nbsp;쓸&amp;nbsp;수&amp;nbsp;있다. &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;주요 커맨드 &lt;br /&gt;- compose.yaml 파일에 정의된 모든 서비스 시작 &lt;br /&gt;docker&amp;nbsp;compose&amp;nbsp;up &lt;br /&gt;&lt;br /&gt;- stop and remove 하고 싶은 경우&lt;br /&gt;docker&amp;nbsp;compose&amp;nbsp;down&amp;nbsp; &lt;br /&gt;&lt;br /&gt;- 로그 모니터 &lt;br /&gt;docker&amp;nbsp;compose&amp;nbsp;logs &lt;br /&gt;&lt;br /&gt;- 현재 상태에서 모든 서비스 리스트 보기 &lt;br /&gt;docker&amp;nbsp;compose&amp;nbsp;ps&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;docker compose 사용 예시 &lt;br /&gt;프론트/백엔드로&amp;nbsp;나뉜&amp;nbsp;어플리케이션&amp;nbsp;예시. &lt;br /&gt;백엔드는&amp;nbsp;persistent한&amp;nbsp;볼륨에&amp;nbsp;데이터&amp;nbsp;저장, &lt;br /&gt;프론트는 네트워크와 연결되어 있고 외부에 443 포트로 노출된 경우.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1417&quot; data-origin-height=&quot;538&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cwQm29/dJMcabYv8ff/XqvXtfrKHHkKp2DdTJK0v0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cwQm29/dJMcabYv8ff/XqvXtfrKHHkKp2DdTJK0v0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cwQm29/dJMcabYv8ff/XqvXtfrKHHkKp2DdTJK0v0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcwQm29%2FdJMcabYv8ff%2FXqvXtfrKHHkKp2DdTJK0v0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1417&quot; height=&quot;538&quot; data-origin-width=&quot;1417&quot; data-origin-height=&quot;538&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커 컴포즈 사용하는 간단한 예시 &lt;br /&gt;- flask, redis 사용하는 웹앱을 사례로 들어서 아래와 같이 진행하면 된다.&lt;br /&gt;&lt;br /&gt;1.&amp;nbsp;프로젝트&amp;nbsp;set&amp;nbsp;up &lt;br /&gt;-프로젝트&amp;nbsp;디렉토리&amp;nbsp;생성하고&amp;nbsp;app.py&amp;nbsp;파일&amp;nbsp;생성하고&amp;nbsp;requirements.txt&amp;nbsp;&amp;amp;&amp;nbsp;도커파일&amp;nbsp;생성&lt;/p&gt;
&lt;pre id=&quot;code_1780634890006&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# syntax=docker/dockerfile:1
FROM python:3.12-alpine  # Builds an image with the Python 3.12 image
WORKDIR /code  # Sets the working directory to `/code`
ENV FLASK_APP=app.py  # Sets environment variables used by the `flask` command
ENV FLASK_RUN_HOST=0.0.0.0
RUN apk add --no-cache gcc musl-dev linux-headers  # Installs `gcc` and other dependencies
COPY requirements.txt .  # Copies `requirements.txt`
RUN pip install -r requirements.txt  # Installs the Python dependencies
COPY . .  # Copies the current directory `.` in the project to the workdir `.` in the image
EXPOSE 5000
CMD [&quot;flask&quot;, &quot;run&quot;, &quot;--debug&quot;]  # Sets the default command for the container to `flask run --debug`&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;Dockerfile에&amp;nbsp;파이썬&amp;nbsp;이미지&amp;nbsp;빌드,&amp;nbsp;워킹&amp;nbsp;디렉토리&amp;nbsp;설정,&amp;nbsp;환경&amp;nbsp;변수,&amp;nbsp;dependencies&amp;nbsp;설치하고 &lt;br /&gt;컨테이너&amp;nbsp;디폴트&amp;nbsp;커맨드로&amp;nbsp;flask&amp;nbsp;run를&amp;nbsp;넣어줌. &lt;br /&gt;.env랑 .dockerignore 등도 함께 작성해줌. &lt;br /&gt;&lt;br /&gt;2.&amp;nbsp;서비스&amp;nbsp;정의&amp;nbsp;&amp;amp;&amp;nbsp;시작 &lt;br /&gt;compose.yaml&amp;nbsp;파일을&amp;nbsp;프로젝트&amp;nbsp;디렉토리에&amp;nbsp;생성하고&amp;nbsp;서비스&amp;nbsp;정의.&lt;/p&gt;
&lt;pre id=&quot;code_1780634945774&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;services:
  web:
    build: .
    ports:
      - &quot;${APP_PORT}:5000&quot;
    environment:
      - REDIS_HOST=${REDIS_HOST}
      - REDIS_PORT=${REDIS_PORT}

  redis:
    image: redis:alpine&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;예시에서는&amp;nbsp;web과&amp;nbsp;redis로&amp;nbsp;나눠서&amp;nbsp;설정함. &lt;br /&gt;redis의&amp;nbsp;경우&amp;nbsp;도커&amp;nbsp;허브&amp;nbsp;레지스트리에&amp;nbsp;있는&amp;nbsp;이미지를&amp;nbsp;pull해서&amp;nbsp;사용함. &lt;br /&gt;&lt;br /&gt;docker&amp;nbsp;compose&amp;nbsp;up&amp;nbsp;커맨드&amp;nbsp;사용해서&amp;nbsp;어플리케이션&amp;nbsp;시작하고 &lt;br /&gt;로컬호스트&amp;nbsp;접속해서&amp;nbsp;보면&amp;nbsp;플라스크&amp;nbsp;앱이&amp;nbsp;실행된걸&amp;nbsp;확인할&amp;nbsp;수&amp;nbsp;있다. &lt;br /&gt;&lt;br /&gt;Startup&amp;nbsp;race에서&amp;nbsp;web과&amp;nbsp;redis가&amp;nbsp;동시에&amp;nbsp;시작되는데, &lt;br /&gt;redis가&amp;nbsp;준비되지&amp;nbsp;않으면&amp;nbsp;플라스크앱이&amp;nbsp;실행이&amp;nbsp;안될&amp;nbsp;수&amp;nbsp;있음. &lt;br /&gt;-&amp;gt; 그래서 다음 단계에서는 이걸 fix 함. &lt;br /&gt;&lt;br /&gt;3.&amp;nbsp;redis&amp;nbsp;healthy가&amp;nbsp;확인되면&amp;nbsp;web을&amp;nbsp;시작하도록&amp;nbsp;compose.yaml&amp;nbsp;파일&amp;nbsp;업데이트&lt;/p&gt;
&lt;pre id=&quot;code_1780634988774&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;services:
  web:
    build: .
    ports:
      - &quot;${APP_PORT}:5000&quot;
    environment:
      - REDIS_HOST=${REDIS_HOST}
      - REDIS_PORT=${REDIS_PORT}
    depends_on:
      redis:
        condition: service_healthy

  redis:
    image: redis:alpine
    healthcheck:
      test: [&quot;CMD&quot;, &quot;redis-cli&quot;, &quot;ping&quot;]
      interval: 5s
      timeout: 3s
      retries: 5
      start_period: 10s&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;healthcheck&amp;nbsp;블록을&amp;nbsp;통해&amp;nbsp;Compose에&amp;nbsp;Redis가&amp;nbsp;준비&amp;nbsp;되었는지&amp;nbsp;알려줌. &lt;br /&gt;test&amp;nbsp;커맨드를&amp;nbsp;통해&amp;nbsp;컨테이너&amp;nbsp;내부에서&amp;nbsp;헬스체크를&amp;nbsp;수행할수있다. &lt;br /&gt;그리고&amp;nbsp;docker&amp;nbsp;compose&amp;nbsp;up&amp;nbsp;하면&amp;nbsp;이렇게&amp;nbsp;헬스상태를&amp;nbsp;볼&amp;nbsp;수&amp;nbsp;있음. &lt;br /&gt;로컬호스트:포트&amp;nbsp;접속해서&amp;nbsp;플라스크앱&amp;nbsp;실행&amp;nbsp;확인. &lt;br /&gt;&lt;br /&gt;4.&amp;nbsp;watch&lt;/p&gt;
&lt;pre id=&quot;code_1780635040304&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;services:
  web:
    build: .
    ports:
      - &quot;${APP_PORT}:5000&quot;
    environment:
      - REDIS_HOST=${REDIS_HOST}
      - REDIS_PORT=${REDIS_PORT}
    depends_on:
      redis:
        condition: service_healthy
    develop:
      watch:
        - action: sync+restart
          path: .
          target: /code
        - action: rebuild
          path: requirements.txt

  redis:
    image: redis:alpine
    healthcheck:
      test: [&quot;CMD&quot;, &quot;redis-cli&quot;, &quot;ping&quot;]
      interval: 5s
      timeout: 3s
      retries: 5
      start_period: 10s&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;sync+restart : &lt;br /&gt;프로젝트&amp;nbsp;디렉토리에서&amp;nbsp;파일&amp;nbsp;변경이&amp;nbsp;있으면&amp;nbsp;컴포즈는&amp;nbsp;마운트된&amp;nbsp;워킹디렉토리&amp;nbsp;경로로&amp;nbsp;카피하고 &lt;br /&gt;컨테이너를&amp;nbsp;재시작한다. &lt;br /&gt;rebuild는&amp;nbsp;requirements.txt에&amp;nbsp;새로운&amp;nbsp;dependency가&amp;nbsp;생기면&amp;nbsp;전체&amp;nbsp;이미지&amp;nbsp;rebuild를&amp;nbsp;trigger한다. &lt;br /&gt;&lt;br /&gt;docker&amp;nbsp;compose&amp;nbsp;up&amp;nbsp;--watch&amp;nbsp;커맨드를&amp;nbsp;이용해서&amp;nbsp;watch를&amp;nbsp;사용할수있다. &lt;br /&gt;&lt;br /&gt;5.&amp;nbsp;volume&lt;/p&gt;
&lt;pre id=&quot;code_1780635104661&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;services:
  web:
    build: .
    ports:
      - &quot;${APP_PORT}:5000&quot;
    environment:
      - REDIS_HOST=${REDIS_HOST}
      - REDIS_PORT=${REDIS_PORT}
    depends_on:
      redis:
        condition: service_healthy
    develop:
      watch:
        - action: sync+restart
          path: .
          target: /code
        - action: rebuild
          path: requirements.txt

  redis:
    image: redis:alpine
    volumes:
      - redis-data:/data
    healthcheck:
      test: [&quot;CMD&quot;, &quot;redis-cli&quot;, &quot;ping&quot;]
      interval: 5s
      timeout: 3s
      retries: 5
      start_period: 10s

volumes:
  redis-data:&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;이 예시에서는 redis.volumes는 네임드 볼륨 data에 마운트 되고, redis가 이 경로에 데이터 파일을 write함. &lt;br /&gt;그리고 상위레벨의 volumes 키는 이걸 도커에 register해서 compose up/down 사이에 볼륨이 지속될수있게 한다. &lt;/p&gt;
&lt;pre id=&quot;code_1780635169732&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker compose down -v&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;볼륨리셋에는&amp;nbsp;-v&amp;nbsp;커맨드&amp;nbsp;사용하는데&amp;nbsp;이건&amp;nbsp;저장된&amp;nbsp;데이터&amp;nbsp;영구&amp;nbsp;삭제이므로&amp;nbsp;사용시&amp;nbsp;주의.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;참고&lt;br /&gt;&lt;a href=&quot;https://docs.docker.com/reference/compose-file/volumes/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.docker.com/reference/compose-file/volumes/&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://docs.docker.com/compose/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.docker.com/compose/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Docker</category>
      <category>compose</category>
      <category>docker</category>
      <category>docker-compose</category>
      <category>DockerCompose</category>
      <category>도커</category>
      <category>도커컴포즈</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/22</guid>
      <comments>https://chonny.tistory.com/22#entry22comment</comments>
      <pubDate>Fri, 5 Jun 2026 13:54:42 +0900</pubDate>
    </item>
    <item>
      <title>도커 설치 에러 해결 (For security reasons C:\ProgramData\DockerDesktop must be owned by an elevated account)</title>
      <link>https://chonny.tistory.com/21</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;window 에서 exe로 도커 설치하는데 계속 같은 에러가 나서 아래와 같이 찾아본 해결책들 시도해봄.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 아래 순서대로 하니씩 해보고 해결안되면 3번으로 해결하면 됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) exe파일 마우스 우클릭 '관리자 권한으로 실행' -&amp;gt; 똑같은 에러 발생&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2) C:\ProgramData\DockerDesktop &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;(숨긴 항목 보기 필요)&lt;span&gt; &lt;/span&gt;&lt;/span&gt;폴더에 마우스 우클릭 -&amp;gt; 속성 - 보안 - 고급에서 소유자 변경 등등 권한 변경 -&amp;gt; 똑같은 에러 발생&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3) 관리자 권한으로 win + R -&amp;gt; cmd 입력 -&amp;gt; ctrl + shift + enter 하면 관리자 권한으로 cmd 실행됨&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; 여기에서 exe 파일 위치로 이동하고 -&amp;gt; &lt;span style=&quot;background-color: #f9fafb; color: #434c5f; text-align: start;&quot;&gt;start /w &lt;/span&gt;&lt;span style=&quot;background-color: #f9fafb; color: #2d9568; text-align: start;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #f9fafb; color: #434c5f; text-align: start;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #f9fafb; color: #2d9568; text-align: start;&quot;&gt;&quot;Docker Desktop Installer.exe&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #f9fafb; color: #434c5f; text-align: start;&quot;&gt; install&amp;nbsp; 명령어 실행&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f9fafb; color: #434c5f; text-align: start;&quot;&gt;-&amp;gt; 권한 관련 창 뜰때 관리자 관리자 계정 암호 입력하면 -&amp;gt; installing 됨.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #434c5f;&quot;&gt;&lt;span style=&quot;background-color: #f9fafb;&quot;&gt;도커 setup 관련해서 공식 문서는 아래에서 참고.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #434c5f;&quot;&gt;&lt;span style=&quot;background-color: #f9fafb;&quot;&gt;&lt;a href=&quot;https://docs.docker.com/desktop/setup/install/windows-install/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://docs.docker.com/desktop/setup/install/windows-install/&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>etc.</category>
      <category>도커</category>
      <category>도커설치</category>
      <category>도커설치에러</category>
      <category>도커에러</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/21</guid>
      <comments>https://chonny.tistory.com/21#entry21comment</comments>
      <pubDate>Wed, 6 May 2026 11:57:42 +0900</pubDate>
    </item>
    <item>
      <title>[eclipse] Some projects cannot be imported because they already exist in the workspace 오류 해결</title>
      <link>https://chonny.tistory.com/20</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;이클립스에서 프로젝트 import 오류가 발생했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동일한 프로젝트를 복사하고 import하려고했더니 'Some projects cannot be imported because they already exist in the workspace' 이 오류가 발생하면서 프로젝트가 import가 안됐다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;경로명은 다르지만 .project 파일의 name이 원래 존재하는 프로젝트 파일과 같아서 이런 에러가 발생한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로 import하려는 프로젝트의 경로에 들어가서 .project 파일을 연다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러면 아래와 같이 뜨는데 저 &amp;lt;name&amp;gt; 태그 사이에 내용을 어쨌든 원래 프로젝트명과 다르게 바꿔주면 된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;598&quot; data-origin-height=&quot;415&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brXPkU/btsMey9XxxS/huNr5hRKXuWisKHnXKDfaK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brXPkU/btsMey9XxxS/huNr5hRKXuWisKHnXKDfaK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brXPkU/btsMey9XxxS/huNr5hRKXuWisKHnXKDfaK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrXPkU%2FbtsMey9XxxS%2FhuNr5hRKXuWisKHnXKDfaK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;598&quot; height=&quot;415&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;598&quot; data-origin-height=&quot;415&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생각보다 간단한 에러였다.&lt;/p&gt;</description>
      <category>etc.</category>
      <category>Eclipse</category>
      <category>importproject</category>
      <category>Java</category>
      <category>이클립스</category>
      <category>이클립스에러</category>
      <category>이클립스프로젝트</category>
      <category>자바</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/20</guid>
      <comments>https://chonny.tistory.com/20#entry20comment</comments>
      <pubDate>Tue, 11 Feb 2025 04:47:15 +0900</pubDate>
    </item>
    <item>
      <title>Git fatal: detected dubious ownership in repository at 에러 해결</title>
      <link>https://chonny.tistory.com/19</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;어제까지 잘되던 깃허브 커밋이 갑자기 이런 에러가 발생했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 fatal로 시작해서 좀 무서웠지만 읽어보니 아래에 나온 커맨드를 실행해주면 됨.&lt;/p&gt;
&lt;pre class=&quot;bash&quot; style=&quot;background-color: #f4f5f7; color: #000000; text-align: left;&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;fatal: detected dubious ownership in repository at '&amp;lt;path to the repository&amp;gt;'
To add an exception for this directory, call:
git config --global --add safe.directory &amp;lt;path to the repository&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #172b4d; text-align: start;&quot;&gt;찾아보니 prevent a user from executing&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #172b4d; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;git&lt;span style=&quot;background-color: #ffffff; color: #172b4d; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #172b4d; text-align: start;&quot;&gt;commands in a repository owned by a different user. 때문에 생겨난 보안정책이라고 한다. 내가 기관에서 제공해주는 가상환경에서 웹페이지 개발하고 있어서 이런 오류가 생긴듯하다. 근데 여태껏 없다가 한달만에 처음 나타난 오류...ㅎ....&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #172b4d; text-align: start;&quot;&gt;워크스페이스 경로를 &amp;lt;&amp;gt;에 넣고 아래 명령어를 실행해주면 된다.&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #172b4d; text-align: start;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;git&amp;nbsp;config&amp;nbsp;--global&amp;nbsp;--add&amp;nbsp;safe.directory&amp;nbsp;&amp;lt;path&amp;nbsp;to&amp;nbsp;the&amp;nbsp;repository&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 나는 또 다시 같은 에러가 나길래 VS code랑 커맨드창 다 끄고 다시 실행해서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;git add * 했더니 정상적으로 커밋되었음.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세상엔 배울 것이 너무나 많고 에러는 더 많다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고 : &lt;a href=&quot;https://confluence.atlassian.com/bbkb/git-command-returns-fatal-error-about-the-repository-being-owned-by-someone-else-1167744132.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://confluence.atlassian.com/bbkb/git-command-returns-fatal-error-about-the-repository-being-owned-by-someone-else-1167744132.html&lt;/a&gt;&lt;/p&gt;</description>
      <category>etc.</category>
      <category>error</category>
      <category>git</category>
      <category>gitcommand</category>
      <category>github</category>
      <category>깃</category>
      <category>깃에러</category>
      <category>깃허브</category>
      <category>깃허브에러</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/19</guid>
      <comments>https://chonny.tistory.com/19#entry19comment</comments>
      <pubDate>Mon, 3 Feb 2025 20:45:12 +0900</pubDate>
    </item>
    <item>
      <title>GitHub default branch 변경</title>
      <link>https://chonny.tistory.com/18</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;일단 깃허브에서 원래 디폴트 브랜치가 master 였는데 black lives matter때 주종 관계를 연상시키게하는 master대신 main으로 바뀌었다고 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 VS code나 기존 자료들에는 여전히 master로 사용되고 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 나도 처음에 아무생각없이 master로 push를 했더니 이렇게 브랜치가 두 개가 있었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;592&quot; data-origin-height=&quot;453&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bo5WJQ/btsL4RQOND0/i2qMvKMSQDQQdIT4K5jGuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bo5WJQ/btsL4RQOND0/i2qMvKMSQDQQdIT4K5jGuk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bo5WJQ/btsL4RQOND0/i2qMvKMSQDQQdIT4K5jGuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbo5WJQ%2FbtsL4RQOND0%2Fi2qMvKMSQDQQdIT4K5jGuk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;592&quot; height=&quot;453&quot; data-origin-width=&quot;592&quot; data-origin-height=&quot;453&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 어느정도 정리가 되어서 default 브랜치를 마스터로 변경했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;커맨드로도 할 수 있지만 깃허브 자체에서 쉽게 바꿀 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 디렉토리 들어가서 오른쪽 위 setting&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1677&quot; data-origin-height=&quot;198&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cxxhBv/btsL6tHVJG9/RFfqr1zN6ULA7zKqubclO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cxxhBv/btsL6tHVJG9/RFfqr1zN6ULA7zKqubclO0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cxxhBv/btsL6tHVJG9/RFfqr1zN6ULA7zKqubclO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcxxhBv%2FbtsL6tHVJG9%2FRFfqr1zN6ULA7zKqubclO0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1677&quot; height=&quot;198&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1677&quot; data-origin-height=&quot;198&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왼쪽 general - 아래 default branch를 보면&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;2118&quot; data-origin-height=&quot;906&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/01Ogg/btsL6IrnfJS/KY8KjtBfTAMQ7W2m1J7W0K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/01Ogg/btsL6IrnfJS/KY8KjtBfTAMQ7W2m1J7W0K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/01Ogg/btsL6IrnfJS/KY8KjtBfTAMQ7W2m1J7W0K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F01Ogg%2FbtsL6IrnfJS%2FKY8KjtBfTAMQ7W2m1J7W0K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2118&quot; height=&quot;906&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;2118&quot; data-origin-height=&quot;906&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 디폴트 브랜치 항목이 있고 체크한 오른쪽 화살표 눌러주면 이런 창이 뜨는데&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;901&quot; data-origin-height=&quot;331&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/btFH5f/btsL5O0cwcf/PG6UVUbLCgYUoY5pSkTMF1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/btFH5f/btsL5O0cwcf/PG6UVUbLCgYUoY5pSkTMF1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/btFH5f/btsL5O0cwcf/PG6UVUbLCgYUoY5pSkTMF1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbtFH5f%2FbtsL5O0cwcf%2FPG6UVUbLCgYUoY5pSkTMF1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;901&quot; height=&quot;331&quot; data-origin-width=&quot;901&quot; data-origin-height=&quot;331&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기에서 원하는 브랜치로 바꾸고 update 눌러주면 된다!&lt;/p&gt;</description>
      <category>etc.</category>
      <category>branch</category>
      <category>defaultbranch</category>
      <category>git</category>
      <category>github</category>
      <category>main</category>
      <category>master</category>
      <category>깃허브</category>
      <category>깃허브세팅</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/18</guid>
      <comments>https://chonny.tistory.com/18#entry18comment</comments>
      <pubDate>Mon, 3 Feb 2025 20:32:44 +0900</pubDate>
    </item>
    <item>
      <title>Window PowerShell sbt compile 에러</title>
      <link>https://chonny.tistory.com/17</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트에서 package 사용하려고 하는데 sbt compile에서 아래와 같은 에러가 났다.&lt;/p&gt;
&lt;pre id=&quot;code_1737394048394&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt; 'sbt' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 
 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1737393904859&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sbt 명령이 현재 위치에 있지만 이 명령을 찾을 수 없습니다. 
Windows PowerShell은 기본적으로 현재  위치에서 명령을 로드하지 않습니다. 
이 명령을 신뢰하는 경우 대신 &quot;.\sbt&quot;을(를) 입력하십시오.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 일단 자바 버전 문제 인가 싶어서 jdk 버전 낮춰서 설치하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시키는대로 .\sbt compile 시도 -&amp;gt; 똑같은 에러&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;에러메시지가 한글로 뜨니까 정보도 거의 없었지만 일단 찾아본 결과 이러한 종류의 에러는 권한 문제인 것으로 추정하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 명령어 커맨드창에 입력.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1737393920668&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;PS C:\&amp;gt; Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 다시 sbt compile -&amp;gt; 에러&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;.\sbt &lt;span&gt;-&amp;gt; loding failed...-&amp;gt; ignore함.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;다시 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;.\sbt compile&lt;span&gt; 했는데 실행되어서&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;.\sbt&lt;span&gt; run까지 실행하고 브라우저에서 default rendering 확인하고 &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;개발환경 세팅 1차 완료했다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1677&quot; data-origin-height=&quot;477&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EeALo/btsLUZtdc2i/xJZcKfuARCf8R43PypvarK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EeALo/btsLUZtdc2i/xJZcKfuARCf8R43PypvarK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EeALo/btsLUZtdc2i/xJZcKfuARCf8R43PypvarK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEeALo%2FbtsLUZtdc2i%2FxJZcKfuARCf8R43PypvarK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1677&quot; height=&quot;477&quot; data-origin-width=&quot;1677&quot; data-origin-height=&quot;477&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고 : &lt;a href=&quot;https://chilas-it.tistory.com/254&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://chilas-it.tistory.com/254&lt;/a&gt;&lt;/p&gt;</description>
      <category>etc.</category>
      <category>powershell</category>
      <category>powershell에러</category>
      <category>powershell에러해결</category>
      <category>windowpowershell</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/17</guid>
      <comments>https://chonny.tistory.com/17#entry17comment</comments>
      <pubDate>Tue, 21 Jan 2025 02:27:38 +0900</pubDate>
    </item>
    <item>
      <title>[Python] opencv 바이너리 이미지 비트연산</title>
      <link>https://chonny.tistory.com/16</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;두 종류의 바이너리 이미지에서 intersection인 부분만 추출해서 새로운 이미지를 만들기위해 사용한 방법이다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;opencv 비트 연산으로 간단히 만들 수 있었다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;opencv 공식 document에서 bitwise_and()에 대해 설명되어 있는 내용이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1501&quot; data-origin-height=&quot;1239&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QpgLf/btrEHVk53Tm/Y8qZktCxKgVnbkSmgFqKb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QpgLf/btrEHVk53Tm/Y8qZktCxKgVnbkSmgFqKb1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QpgLf/btrEHVk53Tm/Y8qZktCxKgVnbkSmgFqKb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQpgLf%2FbtrEHVk53Tm%2FY8qZktCxKgVnbkSmgFqKb1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1501&quot; height=&quot;1239&quot; data-origin-width=&quot;1501&quot; data-origin-height=&quot;1239&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;비트 연산 방식 및 결과는 아래 표 참고.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;541&quot; data-origin-height=&quot;164&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bPpa71/btrECACK3Tv/cMZYCNTrsNhaIZE78bR320/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bPpa71/btrECACK3Tv/cMZYCNTrsNhaIZE78bR320/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bPpa71/btrECACK3Tv/cMZYCNTrsNhaIZE78bR320/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbPpa71%2FbtrECACK3Tv%2FcMZYCNTrsNhaIZE78bR320%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;541&quot; height=&quot;164&quot; data-origin-width=&quot;541&quot; data-origin-height=&quot;164&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;이 중에서 내가 원하는 결과는 AND 기능이었고 이미지에 적용해보았다. 코드는 아래와 같음.&lt;/span&gt;&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0px; padding: 0px; border: none; background-color: #272727; border-radius: 4px; width: 341px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f; width: 17.1458px;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;1&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;2&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;3&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;5&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;6&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;7&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;8&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;9&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;10&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;11&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;12&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0px; text-align: left; width: 296.698px;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&amp;nbsp;cv2&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;img1&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;cv2.imread(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;img1.png&quot;&lt;/span&gt;,&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;img2&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;cv2.imread(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;img2.png&quot;&lt;/span&gt;,&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;img_bwand&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;cv2.bitwise_and(img1,img2)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;img_bwor&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;cv2.bitwise_or(img1,img2)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;img_bwxor&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;cv2.bitwise_xor(img1,img2)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;cv2.imwrite(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;and.png&quot;&lt;/span&gt;,img_bwand)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;cv2.imwrite(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;or.png&quot;&lt;/span&gt;,img_bwor)&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;cv2.imwrite(&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;xor.png&quot;&lt;/span&gt;,img_bwxor)&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0px 2px 4px 0px; width: 11.1562px;&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;아래 이미지 두 개로 세가지 비트 연산 적용해본 결과이다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;position: absolute; text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;t1.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjv0Fz/btrFvrdPMOJ/q5YGUhLNSN375aNVbgRnN0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjv0Fz/btrFvrdPMOJ/q5YGUhLNSN375aNVbgRnN0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjv0Fz/btrFvrdPMOJ/q5YGUhLNSN375aNVbgRnN0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbjv0Fz%2FbtrFvrdPMOJ%2Fq5YGUhLNSN375aNVbgRnN0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;677&quot; height=&quot;631&quot; data-filename=&quot;t1.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;t2.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o9v9X/btrFzRIzk5w/csTBj7ZSKORR1skWNiGEm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o9v9X/btrFzRIzk5w/csTBj7ZSKORR1skWNiGEm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o9v9X/btrFzRIzk5w/csTBj7ZSKORR1skWNiGEm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo9v9X%2FbtrFzRIzk5w%2FcsTBj7ZSKORR1skWNiGEm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;677&quot; height=&quot;631&quot; data-filename=&quot;t2.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;color: #000000; font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;img1&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot;&gt;&lt;span style=&quot;color: #000000; font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;img2&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif; color: #000000;&quot;&gt;위의 img1, img2로 각 and, or, xor 연산하여 이미지 export 하였다.&lt;/span&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif; color: #000000;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 273px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 255px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; height: 255px;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;and.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bBa2i5/btrFz3hMrPt/RDGxULyTQ1MimXhkwLIFwk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bBa2i5/btrFz3hMrPt/RDGxULyTQ1MimXhkwLIFwk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bBa2i5/btrFz3hMrPt/RDGxULyTQ1MimXhkwLIFwk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBa2i5%2FbtrFz3hMrPt%2FRDGxULyTQ1MimXhkwLIFwk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;677&quot; height=&quot;631&quot; data-filename=&quot;and.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; height: 255px;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;or.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0uKyu/btrFwv7TvEQ/zI0QKT3RK92DIyl1N9hBe1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0uKyu/btrFwv7TvEQ/zI0QKT3RK92DIyl1N9hBe1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0uKyu/btrFwv7TvEQ/zI0QKT3RK92DIyl1N9hBe1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0uKyu%2FbtrFwv7TvEQ%2FzI0QKT3RK92DIyl1N9hBe1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;677&quot; height=&quot;631&quot; data-filename=&quot;or.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; height: 255px;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;xor.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bIrJ89/btrFzN0A86B/DsNeWhsjldVbQfQ9iXwj1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bIrJ89/btrFzN0A86B/DsNeWhsjldVbQfQ9iXwj1K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bIrJ89/btrFzN0A86B/DsNeWhsjldVbQfQ9iXwj1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbIrJ89%2FbtrFzN0A86B%2FDsNeWhsjldVbQfQ9iXwj1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;677&quot; height=&quot;631&quot; data-filename=&quot;xor.png&quot; data-origin-width=&quot;677&quot; data-origin-height=&quot;631&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 18px;&quot;&gt;
&lt;td style=&quot;width: 33.3333%; height: 18px;&quot;&gt;&lt;span style=&quot;color: #000000; font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;bitwise_and() &lt;span style=&quot;color: #000000;&quot;&gt;실행 결과&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; height: 18px;&quot;&gt;&lt;span style=&quot;color: #000000; font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;bitwise_or() &lt;span style=&quot;color: #000000;&quot;&gt;실행 결과&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%; height: 18px;&quot;&gt;&lt;span style=&quot;color: #000000; font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;bitwise_xor() &lt;span style=&quot;color: #000000;&quot;&gt;실행 결과&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;필요에 따라 원하는 이미지 연산 방법을 간단하게 사용할 수 있다.&lt;/p&gt;</description>
      <category>Python</category>
      <category>ComputerVision</category>
      <category>cv2</category>
      <category>opencv</category>
      <category>Python</category>
      <category>라이브러리</category>
      <category>이미지연산</category>
      <category>컴퓨터비전</category>
      <category>코딩</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/16</guid>
      <comments>https://chonny.tistory.com/16#entry16comment</comments>
      <pubDate>Thu, 23 Jun 2022 14:22:31 +0900</pubDate>
    </item>
    <item>
      <title>[Python] 이미지 읽어오기, RGB 값 추출, RGB 평균 구하기</title>
      <link>https://chonny.tistory.com/15</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;이미지를 읽어오고 RGB값을 추출하여 그 평균을 사용하려고 아래와 같은 코드를 시행함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 png 파일을 matplotlib.image.imread를 이용해 읽어옴.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 파일의 R, G, B를 각 리스트에 append하고 평균값을 출력함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주어진 경로에서 각 이미지의 RGB 평균값을 구하기 위해 아래와 같이 반복문을 작성함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;평균 RGB값을 소수점 셋째자리까지 출력하도록 함.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&amp;nbsp;matplotlib.image&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;as&lt;/span&gt;&amp;nbsp;mpimg&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&amp;nbsp;numpy&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;as&lt;/span&gt;&amp;nbsp;np&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&amp;nbsp;glob&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;import&lt;/span&gt;&amp;nbsp;os&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;path&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;'./'&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;file_list&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;os.listdir(path)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Red&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;[]&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Green&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;[]&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Blue&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;[]&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;&amp;nbsp;i&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;in&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;range&lt;/span&gt;(&lt;span style=&quot;color: #4be6fa;&quot;&gt;len&lt;/span&gt;(file_list)):&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;img&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;mpimg.imread(path&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;+&lt;/span&gt;&amp;nbsp;file_list[i])&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;&amp;nbsp;x&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;in&lt;/span&gt;&amp;nbsp;img:&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;for&lt;/span&gt;&amp;nbsp;y&amp;nbsp;&lt;span style=&quot;color: #ff3399;&quot;&gt;in&lt;/span&gt;&amp;nbsp;x:&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Red.append(y[&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;])&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Green.append(y[&lt;span style=&quot;color: #c10aff;&quot;&gt;1&lt;/span&gt;])&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Blue.append(y[&lt;span style=&quot;color: #c10aff;&quot;&gt;2&lt;/span&gt;])&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;R_avg&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;sum(Red)&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;len&lt;/span&gt;(Red)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;G_avg&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;sum(Green)&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;len&lt;/span&gt;(Green)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;B_avg&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;=&lt;/span&gt;&amp;nbsp;sum(Blue)&amp;nbsp;&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;/&lt;/span&gt;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;len&lt;/span&gt;(Blue)&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #4be6fa;&quot;&gt;print&lt;/span&gt;(file_list[i][&lt;span style=&quot;color: #c10aff;&quot;&gt;0&lt;/span&gt;:&lt;span style=&quot;color: #0086b3;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff3399;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #c10aff;&quot;&gt;4&lt;/span&gt;],&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;(R:&amp;nbsp;{:.3f}&quot;&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;format&lt;/span&gt;(R_avg),&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;G:&amp;nbsp;{:.3f}&quot;&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;format&lt;/span&gt;(G_avg),&amp;nbsp;&lt;span style=&quot;color: #ffd500;&quot;&gt;&quot;B:&amp;nbsp;{:.3f})&quot;&lt;/span&gt;.&lt;span style=&quot;color: #4be6fa;&quot;&gt;format&lt;/span&gt;(B_avg))&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다수의 이미지에서 RGB 평균을 추출할때 유용하게 사용하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이미지를 다룰때 주의할점은 단순히 이미지 경로만 가져와서는 안되고 imread와 같은 모듈로 읽어와야 함.&lt;/p&gt;</description>
      <category>Python</category>
      <category>image</category>
      <category>Python</category>
      <category>RGB</category>
      <category>rgb평균</category>
      <category>반복문</category>
      <category>이미지</category>
      <category>이미지읽어오기</category>
      <category>코딩</category>
      <category>파이썬</category>
      <category>프로그래밍</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/15</guid>
      <comments>https://chonny.tistory.com/15#entry15comment</comments>
      <pubDate>Mon, 16 May 2022 13:27:20 +0900</pubDate>
    </item>
    <item>
      <title>[LaTeX ] overleaf에서 table 만들기</title>
      <link>https://chonny.tistory.com/14</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;생각보다는 간단히 만들수 있었던 overleaf에서 표만들기!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.overleaf.com/learn&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.overleaf.com/learn&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1647571426877&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Documentation - Overleaf, Online LaTeX Editor&quot; data-og-description=&quot;An online LaTeX editor that&amp;rsquo;s easy to use. No installation, real-time collaboration, version control, hundreds of LaTeX templates, and more.&quot; data-og-host=&quot;www.overleaf.com&quot; data-og-source-url=&quot;https://www.overleaf.com/learn&quot; data-og-url=&quot;https://www.overleaf.com/learn&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/DGw7l/hyNI6LRi2d/ua6pEnqlSx11GmdSPkIREk/img.png?width=256&amp;amp;height=256&amp;amp;face=0_0_256_256,https://scrap.kakaocdn.net/dn/Ma9Qt/hyNJ64yUo5/RiitcdPmPCEeSkirQlMJX0/img.png?width=256&amp;amp;height=256&amp;amp;face=0_0_256_256&quot;&gt;&lt;a href=&quot;https://www.overleaf.com/learn&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.overleaf.com/learn&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/DGw7l/hyNI6LRi2d/ua6pEnqlSx11GmdSPkIREk/img.png?width=256&amp;amp;height=256&amp;amp;face=0_0_256_256,https://scrap.kakaocdn.net/dn/Ma9Qt/hyNJ64yUo5/RiitcdPmPCEeSkirQlMJX0/img.png?width=256&amp;amp;height=256&amp;amp;face=0_0_256_256');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Documentation - Overleaf, Online LaTeX Editor&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;An online LaTeX editor that&amp;rsquo;s easy to use. No installation, real-time collaboration, version control, hundreds of LaTeX templates, and more.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.overleaf.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;우선 공식 documentation에서 비슷한 샘플을 찾고 수정해가면서 원하는 형태의 표를 만들었다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;문자랑 테이블을 넣는데 컴파일 까지 필요해..? 심지어 컴파일 시간도 오래걸림ㅋㅋㅋㅋㅋㅋㅋㅋ&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;하지만 예쁘고 깔끔한 결과물을 만들어 준다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;일단 샘플 두 가지를 가져와봤다. 두 가지 다 비슷한 방식으로 만들었다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;핵심은 셀병합과 라인을 원하는 곳에만 만드는 것이었다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\begin{table}[ht]&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\centering&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\begin{tabular}{l&amp;nbsp;l&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c&amp;nbsp;}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\hline&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\multicolumn&amp;nbsp;{2}{c}{}&amp;amp;&amp;nbsp;\multicolumn{2}{c}{Training&amp;nbsp;[47]}&amp;nbsp;&amp;amp;&amp;nbsp;\multicolumn{2}{c}{Validation&amp;nbsp;[31]}&amp;nbsp;&amp;amp;&amp;nbsp;&amp;nbsp;\multicolumn{2}{c}{Test&amp;nbsp;[40]}&amp;amp;&amp;nbsp;&amp;nbsp;\multicolumn{2}{c}{Total&amp;nbsp;[118]}\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\cline{3-10}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\multicolumn&amp;nbsp;{2}{c}{Group}&amp;nbsp;&amp;amp;&amp;nbsp;{H}&amp;nbsp;&amp;amp;&amp;nbsp;{L}&amp;nbsp;&amp;amp;&amp;nbsp;{H}&amp;nbsp;&amp;amp;&amp;nbsp;{L}&amp;nbsp;&amp;nbsp;&amp;amp;{H}&amp;nbsp;&amp;amp;&amp;nbsp;{L}&amp;nbsp;&amp;amp;{H}&amp;nbsp;&amp;amp;&amp;nbsp;{L}&amp;nbsp;&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\multicolumn&amp;nbsp;{2}{c}{}&amp;nbsp;&amp;amp;&amp;nbsp;{12}&amp;nbsp;&amp;amp;&amp;nbsp;{35}&amp;nbsp;&amp;amp;&amp;nbsp;{7}&amp;nbsp;&amp;amp;&amp;nbsp;{24}&amp;nbsp;&amp;nbsp;&amp;amp;&amp;nbsp;{20}&amp;nbsp;&amp;amp;&amp;nbsp;{20}&amp;nbsp;&amp;amp;&amp;nbsp;{39}&amp;nbsp;&amp;amp;&amp;nbsp;{79}&amp;nbsp;&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\hline&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Type&amp;nbsp;&amp;amp;&amp;nbsp;Cancer&amp;nbsp;&amp;amp;&amp;nbsp;6&amp;amp;&amp;nbsp;33&amp;amp;&amp;nbsp;3&amp;amp;&amp;nbsp;20&amp;amp;&amp;nbsp;11&amp;amp;&amp;nbsp;15&amp;amp;&amp;nbsp;20&amp;amp;68\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;amp;&amp;nbsp;Sample&amp;nbsp;&amp;nbsp;&amp;amp;&amp;nbsp;4&amp;amp;0&amp;amp;1&amp;amp;2&amp;amp;4&amp;amp;3&amp;amp;9&amp;amp;5\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;amp;Carcinoma&amp;nbsp;&amp;amp;1&amp;amp;1&amp;amp;1&amp;amp;1&amp;amp;4&amp;amp;1&amp;amp;6&amp;amp;3\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;amp;Cell&amp;nbsp;&amp;amp;0&amp;amp;0&amp;amp;1&amp;amp;0&amp;amp;0&amp;amp;0&amp;amp;1&amp;amp;0\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\hline&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\end{tabular}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\captionsetup{justification=centering}&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\caption{Collection&amp;nbsp;of&amp;nbsp;dataset}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\label{table:ta}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\end{table}&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;위 코드를 실행하면 아래와 같은 표가 만들어진다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;tb.JPG&quot; data-origin-width=&quot;1176&quot; data-origin-height=&quot;464&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/s7V7r/btrwgDUJOjN/K1lkL9mhQBoBmuD9kEx0xK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/s7V7r/btrwgDUJOjN/K1lkL9mhQBoBmuD9kEx0xK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/s7V7r/btrwgDUJOjN/K1lkL9mhQBoBmuD9kEx0xK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fs7V7r%2FbtrwgDUJOjN%2FK1lkL9mhQBoBmuD9kEx0xK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1176&quot; height=&quot;464&quot; data-filename=&quot;tb.JPG&quot; data-origin-width=&quot;1176&quot; data-origin-height=&quot;464&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;두번째 표도 비슷한 방식으로 만들었다.&lt;/p&gt;
&lt;div class=&quot;colorscripter-code&quot; style=&quot;color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; position: relative !important; overflow: auto;&quot;&gt;
&lt;table class=&quot;colorscripter-code-table&quot; style=&quot;margin: 0; padding: 0; border: none; background-color: #272727; border-radius: 4px;&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;padding: 6px; border-right: 2px solid #4f4f4f;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; word-break: normal; text-align: right; color: #aaa; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;1&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;2&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;3&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;4&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;5&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;6&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;7&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;8&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;9&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;10&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;11&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;12&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;13&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;14&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;15&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;16&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;17&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;18&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;19&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;20&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;21&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;22&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;23&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;24&lt;/div&gt;
&lt;div style=&quot;line-height: 130%;&quot;&gt;25&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;padding: 6px 0; text-align: left;&quot;&gt;
&lt;div style=&quot;margin: 0; padding: 0; color: #f0f0f0; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace !important; line-height: 130%;&quot;&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\usepackage{multirow}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\usepackage{caption}&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\begin{document}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\begin{table}[ht]&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\centering&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\begin{tabular}{l&amp;nbsp;l&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c&amp;nbsp;c}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\hline&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\multicolumn&amp;nbsp;{2}{c}{}&amp;amp;&amp;nbsp;\multicolumn{2}{c}{Training}&amp;nbsp;&amp;amp;&amp;nbsp;&amp;nbsp;\multicolumn{2}{c}{Test}&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\cline{3-6}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\multicolumn&amp;nbsp;{2}{c}{}&amp;nbsp;&amp;amp;&amp;nbsp;{H}&amp;nbsp;&amp;amp;&amp;nbsp;{L}&amp;nbsp;&amp;amp;&amp;nbsp;{H}&amp;nbsp;&amp;amp;&amp;nbsp;{L}&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\multicolumn&amp;nbsp;{2}{c}{}&amp;nbsp;&amp;amp;&amp;nbsp;{12}&amp;nbsp;&amp;amp;&amp;nbsp;{35}&amp;nbsp;&amp;amp;&amp;nbsp;{20}&amp;nbsp;&amp;amp;&amp;nbsp;{20}&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\hline&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Sex&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;amp;&amp;nbsp;F&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;amp;&amp;nbsp;7&amp;nbsp;(59)&amp;nbsp;&amp;amp;&amp;nbsp;14&amp;nbsp;(40)&amp;nbsp;&amp;amp;&amp;nbsp;10&amp;nbsp;(50)&amp;nbsp;&amp;amp;&amp;nbsp;12&amp;nbsp;(60)&amp;nbsp;&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;amp;&amp;nbsp;&amp;nbsp;M&amp;nbsp;&amp;nbsp;&amp;amp;&amp;nbsp;&amp;nbsp;5&amp;nbsp;(42)&amp;nbsp;&amp;amp;&amp;nbsp;21&amp;nbsp;(60)&amp;nbsp;&amp;amp;&amp;nbsp;10&amp;nbsp;(50)&amp;nbsp;&amp;amp;&amp;nbsp;8&amp;nbsp;(40)\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Grade&amp;nbsp;&amp;amp;&amp;nbsp;G1&amp;nbsp;&amp;amp;&amp;nbsp;1&amp;nbsp;(9)&amp;amp;&amp;nbsp;2&amp;nbsp;(6)&amp;nbsp;&amp;amp;2&amp;nbsp;(10)&amp;nbsp;&amp;amp;&amp;nbsp;1&amp;nbsp;(5)\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;amp;&amp;nbsp;G2&amp;nbsp;&amp;amp;&amp;nbsp;7&amp;nbsp;(59)&amp;amp;&amp;nbsp;30&amp;nbsp;(86)&amp;nbsp;&amp;amp;&amp;nbsp;12&amp;nbsp;(60)&amp;amp;&amp;nbsp;16&amp;nbsp;(80)\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;amp;&amp;nbsp;G3&amp;nbsp;&amp;amp;4&amp;nbsp;(34)&amp;amp;&amp;nbsp;3&amp;nbsp;(9)&amp;nbsp;&amp;amp;6&amp;nbsp;(30)&amp;nbsp;&amp;amp;3&amp;nbsp;(15)\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;Cancer&amp;nbsp;&amp;amp;&amp;nbsp;Absent&amp;nbsp;&amp;amp;6&amp;nbsp;(50)&amp;nbsp;&amp;amp;&amp;nbsp;31&amp;nbsp;(89)&amp;nbsp;&amp;amp;&amp;nbsp;9&amp;nbsp;(45)&amp;amp;14&amp;nbsp;(70)&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;&amp;nbsp;&amp;amp;&amp;nbsp;Present&amp;nbsp;&amp;amp;&amp;nbsp;6&amp;nbsp;(50)&amp;amp;&amp;nbsp;4&amp;nbsp;(12)&amp;nbsp;&amp;amp;11&amp;nbsp;(55)&amp;nbsp;&amp;amp;6&amp;nbsp;(30)&amp;nbsp;\\&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\hline&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\end{tabular}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\captionsetup{justification=centering}&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\caption{table}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\label{table:ta}&lt;/div&gt;
&lt;div style=&quot;padding: 0 6px; white-space: pre; line-height: 130%;&quot;&gt;\end{table}&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: right; margin-top: -13px; margin-right: 5px; font-size: 9px; font-style: italic;&quot;&gt;&lt;a style=&quot;color: #4f4f4ftext-decoration:none;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Colored by Color Scripter&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;td style=&quot;vertical-align: bottom; padding: 0 2px 4px 0;&quot;&gt;&lt;a style=&quot;text-decoration: none; color: white;&quot; href=&quot;http://colorscripter.com/info#e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;font-size: 9px; word-break: normal; background-color: #4f4f4f; color: white; border-radius: 10px; padding: 1px;&quot;&gt;cs&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;tb2.JPG&quot; data-origin-width=&quot;865&quot; data-origin-height=&quot;498&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bcuLpG/btrwk5oJGm2/GTI5Qc7kavvmU7lY3hwOC0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bcuLpG/btrwk5oJGm2/GTI5Qc7kavvmU7lY3hwOC0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bcuLpG/btrwk5oJGm2/GTI5Qc7kavvmU7lY3hwOC0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbcuLpG%2Fbtrwk5oJGm2%2FGTI5Qc7kavvmU7lY3hwOC0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;865&quot; height=&quot;498&quot; data-filename=&quot;tb2.JPG&quot; data-origin-width=&quot;865&quot; data-origin-height=&quot;498&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;샘플코드를 원하는 방향으로 수정해가면서 만들면 쉽게 표를 만들수있다.&lt;/p&gt;</description>
      <category>etc.</category>
      <category>LaTeX</category>
      <category>Overleaf</category>
      <category>overleaf표</category>
      <category>table</category>
      <category>논문작성</category>
      <category>논문표</category>
      <author>winches</author>
      <guid isPermaLink="true">https://chonny.tistory.com/14</guid>
      <comments>https://chonny.tistory.com/14#entry14comment</comments>
      <pubDate>Fri, 18 Mar 2022 11:44:47 +0900</pubDate>
    </item>
  </channel>
</rss>