소개
얼굴 이미지에서 성 감지는 컴퓨터 비전의 많은 매혹적인 응용 중 하나입니다. 이 프로젝트에서 우리는 직접 위치와 성별 분류를 위해 OpenCV를 결합하여 얼굴을 식별하고, 점검하고, 성별을 예측하는 장치를 만들고, 특히 Google Colab에서 Python을 활용 하여이 코드를 입력하고 실행할 것입니다. 이 직접은 코드를 쉽게 따라 잡기 쉬운 연습을 제공하여 각 단계를 명확히하여 벤처에 이해하고 적용 할 수 있습니다.
학습 목표
- OpenCV의 HAAR 캐스케이드를 사용하여 얼굴 탐지를 구현하는 방법을 이해하십시오.
- 성별 분류를 위해 Roboflow API를 통합하는 방법을 알아보십시오.
- 파이썬에서 이미지를 처리하고 조작하는 방법을 탐색하십시오.
- matplotlib을 사용하여 감지 결과를 시각화합니다.
- 실제 응용 프로그램을 위해 AI와 컴퓨터 비전을 결합하는 실용적인 기술을 개발하십시오.
이 기사는 Data Science Blogathon 의 일부로 출판되었습니다 .
목차
- Python에서 OpenCV 및 Roboflow를 사용하여 성별을 감지하는 방법은 무엇입니까?
- 1 단계 : 라이브러리 가져 오기 및 이미지 업로드
- 2 단계 : 얼굴 감지를위한 HAAR 캐스케이드 모델 로딩
- 3 단계 : 이미지의면 감지
- 4 단계 : 성 검출 API 설정
- 5 단계 : 각 감지 된면 처리
- 6 단계 : 결과 표시
- 자주 묻는 질문
Python에서 OpenCV 및 Roboflow를 사용하여 성별을 감지하는 방법은 무엇입니까?
성별 탐지를 위해 Python에서 OpenCV 및 Roboflow를 구현하는 방법을 배우자.
1 단계 : 라이브러리 가져 오기 및 이미지 업로드
주요 단계는 중요한 라이브러리를 결과하는 것입니다. 우리는 사진 준비를 위해 OpenCV를 사용하고, 클러스터를 다루기위한 Numpy 및 Matplotlib를 사용하여 시각화합니다. 또한 분석하고 싶은 얼굴이 포함 된 이미지를 업로드했습니다.
Google.Colab 가져 오기 파일 CV2 가져 오기 Numpy를 NP로 가져옵니다 matplotlib에서 pyplot에서 pyplot에서 plt inference_sdk import inferencehttpclient에서 # 이미지 업로드 업로드 = files.upload () # 이미지를로드하십시오 uploaded.keys ()의 filename의 경우 : img_path = filename
Google Colab에서 Files.upload () 작업을 통해 고객은 이웃 기계에서 Colab 환경으로 사진과 같은 레코드를 전송할 수 있습니다. 업로드하면 사진이 전송 된 단어 참조로 표시되며 키는 레코드 이름과 비교됩니다. 그런 다음 루프 용 A를 사용하여 추가 처리를 위해 파일 경로를 추출합니다. 이미지 처리 작업을 처리하기 위해 OpenCV는 얼굴을 감지하고 주위에 경계 상자를 그려야합니다. 동시에, Matplotlib는 이미지 및 자른면을 표시하는 것을 포함하여 결과를 시각화하는 데 사용됩니다.
2 단계 : 얼굴 감지를위한 HAAR 캐스케이드 모델 로딩
다음으로, 우리는 OpenCV의 HAAR 캐스케이드 데모를 쌓아 놓으며 얼굴을 식별하기 위해 미리 훈련됩니다. 이 모델은 인간의 얼굴과 유사한 패턴에 대한 이미지를 스캔하고 좌표를 반환합니다.
# 얼굴 감지를 위해 HAAR 캐스케이드 모델을로드하십시오 face_cascade = cv2.cascadeclassifier (cv2.data.haarcascades 'haarcascade_frontalface_default.xml')
일반적으로 객체 감지를위한 일반적인 전략입니다. 객체와 관련된 가장자리, 텍스처 및 패턴을 식별합니다 (이 경우면). OpenCV는`cascadeclassifier '를 사용하여로드되는 미리 훈련 된면 감지 모델을 제공합니다.
3 단계 : 이미지의면 감지
전송 된 그림을 쌓아서 그레이 스케일로 변경합니다. 이는 위치 정확성에 직면하는 데 큰 차이가 생깁니다. 그 후, 우리는 얼굴 탐지기를 사용하여 이미지에서 얼굴을 찾습니다.
# 이미지를로드하고 그레이 스케일로 변환합니다 img = cv2.imread (img_path) 그레이 = cv2.cvtcolor (IMG, cv2.color_bgr2gray) # 이미지의 얼굴을 감지합니다 faces = face_cascade.detectmultiscale (회색, scalefactor = 1.1, minneighbors = 5, minsize = (30, 30))
- 이미지 로딩 및 변환 :
- cv2.imread ()를 사용하여 전송 된 그림을 쌓으십시오.
- cv2.cvtcolor ()를 사용하여 그림을 그레이 스케일로 변경하여 복잡성을 줄이고 발견을 업그레이드하십시오.
- 얼굴 감지 :
- Grayscale 이미지에서 Faces를 찾으려면 DetectMultiscale ()을 사용하십시오.
- 함수는 이미지를 확장하고 얼굴 패턴을 다른 영역을 점검합니다.
- scalefactor 및 minneighbors와 같은 매개 변수는 감지 감도와 정확도를 조정합니다.
4 단계 : 성 검출 API 설정
이제 우리는 얼굴을 감지 했으므로 inferencehttpclient를 사용하여 Roboflow API를 초기화하여 각 감지 된면의 성별을 예측합니다.
# 성 검출을 위해 inferencehttpclient를 초기화합니다 클라이언트 = inferencehttpclient ( api_url = "https://detect.roboflow.com", api_key = "use_your_api" ))
inferencehttpclient는 Roboflow API URL 및 API 키로 클라이언트를 구성하여 RoboFlow의 미리 훈련 된 모델과의 상호 작용을 단순화합니다. 이 설정을 통해 요청은 Roboflow에서 호스팅 된 성 감지 모델로 전송 될 수 있습니다. API 키는 인증을위한 고유 식별자 역할을하여 Roboflow API에 대한 안전한 액세스 및 활용을 가능하게합니다.
5 단계 : 각 감지 된면 처리
우리는 감지 된 각면을 통과하고 주위의 사각형을 그리며 얼굴 이미지를 자르고 추가 처리를 위해 얼굴 이미지를 자릅니다. 각 자른 얼굴 이미지는 일시적으로 저장되어 Roboflow API로 전송되며, 성별 감탄 -qiyyg/2 모델은 성별을 예측하는 데 사용됩니다.
성 감지-Qiyyg/2 모델은 성별을 얼굴 특징을 기반으로 남성 또는 여성으로 분류하도록 최적화 된 미리 훈련 된 딥 러닝 모델입니다. 모델이 분류에 대한 모델이 얼마나 확실한지를 나타내는 신뢰 점수를 가진 예측을 제공합니다. 이 모델은 강력한 데이터 세트에서 훈련되어 광범위한 얼굴 이미지에서 정확한 예측을 할 수 있습니다. 이러한 예측은 API에 의해 반환되며 각면에 식별 된 성별 및 신뢰 수준을 표시하는 데 사용됩니다.
# 얼굴 수를 초기화합니다 face_count = 0 # 라벨이있는 자른 얼굴 이미지를 저장하는 목록 cruped_faces = [] # 감지 된 각면을 처리합니다 얼굴의 (x, y, w, h)의 경우 : face_count = 1 # 감지 된면 주위에 사각형을 그립니다 cv2.rectangle (img, (x, y), (xw, yh), (255, 0, 0), 2) # 얼굴 영역을 추출하십시오 face_img = img [y : yh, x : xw] # 얼굴 이미지를 일시적으로 저장합니다 face_img_path = 'temp_face.jpg' cv2.imwrite (face_img_path, face_img) # inferencehttpclient를 사용하여 성별을 감지합니다 result = client.infer (face_img_path, model_) 결과 및 결과에서 '예측'인 경우 [ '예측'] : 예측 = 결과 [ '예측'] [0] 성별 = 예측 [ 'class'] 자신감 = 예측 [ '신뢰'] # 성별과 자신감으로 사각형에 레이블을 지정하십시오 label = f '{gender} ({신뢰 : .2f})' ' cv2.putText (IMG, 레이블, (x, y -10), cv2.font_hershey_simplex, 0.8, (255, 0, 0), 2) # 목록에 라벨이 달린 자른면 추가 cruped_faces.append ((face_img, label))
인식 된 각면에 대해 시스템은 이미지의 얼굴을 시각적으로 강조하기 위해 cv2.rectangle ()을 사용하여 경계 상자를 그립니다. 그런 다음 슬라이싱 (face_img = img [y : yh, x : xw])을 사용하여 얼굴 영역을 자르고 추가 처리를 위해 분리합니다. 잘린 얼굴을 일시적으로 저장 한 후 시스템은 클라이언트를 통해 Roboflow 모델로 보냅니다. 이 시스템은 CV2.putText ()를 사용하여 각면 위의 텍스트 레이블로 이러한 결과를 추가하여 명확하고 유익한 오버레이를 제공합니다.
6 단계 : 결과 표시
마지막으로 출력을 시각화합니다. 먼저 BGR에서 RGB로 이미지를 변환 한 다음 (OpenCV가 기본적으로 BGR을 사용 하듯이) 감지 된 얼굴과 성별 예측을 표시합니다. 그 후, 우리는 각자의 레이블로 개별 자른 얼굴을 보여줍니다.
# 디스플레이를 위해 BGR에서 RGB로 이미지를 변환합니다 IMG_RGB = CV2.CVTCOLOR (IMG, CV2.COLOR_BGR2RGB) # 감지 된 얼굴과 성별 레이블로 이미지 표시 plt.figure (figsize = (10, 10)) plt.imshow (IMG_RGB) plt.axis ( 'off') plt.title (f "감지 된 얼굴 : {face_count}") plt.show () # 각 자른면을 가로로 표시합니다 그림, 축 = plt.subplots (1, face_count, figsize = (15, 5)) I, (face_img, label) enumerate (crepped_faces)의 경우 : face_rgb = cv2.cvtcolor (face_img, cv2.color_bgr2rgb) 축 [i] .imshow (face_rgb) 축 [i] .axis ( 'off') 축 [i] .set_title (레이블) plt.show ()
- 이미지 변환 : OpenCV는 기본적으로 bgr 형식을 사용하므로 matplotlib의 올바른 색상 디스플레이를 위해 cv2.cvtcolor ()를 사용하여 이미지를 RGB로 변환합니다.
- 결과 표시 :
- 우리는 matplotlib를 사용하여 감지 된 얼굴과 그 위에있는 성별 라벨이있는 이미지를 표시합니다.
- 우리는 또한 각 자른 얼굴 이미지와 예측 된 성별 레이블을 별도의 서브 플롯으로 보여줍니다.
원본 데이터
출력 결과 데이터
결론
이 안내서에서는 Python의 OpenCV 및 Roboflow를 사용하여 강력한 성별 탐지를 성공적으로 개발했습니다. 얼굴 감지 용 OpenCV 및 성별 예측을위한 Roboflow를 구현함으로써 이미지에서 성별을 정확하게 식별하고 분류 할 수있는 시스템을 만들었습니다. 시각화를위한 Matplotlib의 추가는 프로젝트를 더욱 향상시켜 결과에 대한 명확하고 통찰력있는 디스플레이를 제공했습니다. 이 프로젝트는 이러한 기술을 결합하는 효과를 강조하고 실제 응용 프로그램에서 실질적인 이점을 보여 주며 성 탐지 작업을위한 강력한 솔루션을 제공합니다.
주요 테이크 아웃
- 이 프로젝트는 미리 훈련 된 AI 모델을 사용하여 이미지에서 성별을 감지하고 분류하는 효과적인 접근법을 보여줍니다. 시연은 성적 지향을 키가 큰 확실성으로 정확하게 구별하여 흔들리지 않는 품질을 보여줍니다.
- AI 공제를위한 Roboflow, 사진 준비를위한 OpenCV 및 시각화를위한 Matplotlib와 같은 장치를 결합함으로써 벤처는 다양한 혁신을 효과적으로 결합하여 목표를 실현합니다.
- 단일 사진에서 다른 사람들의 성별을 구별하고 분류 할 수있는 시스템의 능력은 활기와 유연성을 강조하여 다양한 응용 프로그램에 적합합니다.
- 미리 훈련 된 데모를 사용하면 다가오는 내에서 주어진 확실한 점수에 의해 입증 된 바와 같이 예측에서 큰 정확성을 보장합니다. 이 정확도는 신뢰할 수있는 성별 분류가 필요한 응용 프로그램에 중요합니다.
- 이 프로젝트는 시각화 기술을 사용하여 감지 된 얼굴과 예측 된 성별로 이미지에 주석을 달 수 있습니다. 이로 인해 결과를 추가 분석을 위해 더 해석 가능하고 가치가 있습니다.
또한 읽으십시오 : NLP 및 Python을 사용한 명명 된 기반 성별 식별
자주 묻는 질문
Q1. 프로젝트의 목적은 무엇입니까?A. 프로젝트는 AI를 사용하여 이미지에서 성별을 감지하고 분류하는 것을 목표로합니다. 사전 훈련 된 모델을 활용하여 사진에서 개인의 성별을 식별하고 레이블을 지정합니다.
Q2. 어떤 기술과 도구가 사용 되었습니까?A.이 프로젝트는 AI 추론, 이미지 처리를위한 OpenCV 및 시각화를위한 Matplotlib에 대한 Roboflow 성 검출 모델을 활용했습니다. 또한 스크립팅 및 데이터 처리에 Python을 사용했습니다.
Q3. 성 탐지 모델은 어떻게 작동합니까?A. 모델은 이미지를 분석하여 얼굴을 감지 한 다음 훈련 된 AI 알고리즘을 기반으로 감지 된 각면을 수컷 또는 여성으로 분류합니다. 예측에 대한 신뢰 점수를 출력합니다.
Q4. 성 탐지는 얼마나 정확합니까?A. 모델은 신뢰할 수있는 예측을 나타내는 신뢰 점수로 높은 정확도를 보여줍니다. 예를 들어, 결과의 신뢰 점수는 80%이상 이어 성능이 강한 것으로 나타났습니다.
Q5. 모델 프로세스는 어떤 종류의 이미지입니까?이 기사에 표시된 미디어는 분석 Vidhya가 소유하지 않으며 저자의 재량에 따라 사용됩니다.
위 내용은 Python의 Opencv 및 Roboflow를 사용한 성별 탐지 - 분석 Vidhya의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

AI의 빠른 통합으로 악화 된 직장의 급성장 용량 위기는 점진적인 조정을 넘어 전략적 변화를 요구합니다. 이것은 WTI의 발견에 의해 강조됩니다. 직원의 68%가 작업량으로 어려움을 겪고 BUR로 이어

John Searle의 중국 방 주장 : AI 이해에 대한 도전 Searle의 사고 실험은 인공 지능이 진정으로 언어를 이해할 수 있는지 또는 진정한 의식을 가질 수 있는지 직접 의문을 제기합니다. Chines를 무시하는 사람을 상상해보십시오

중국의 기술 거대 기업은 서부에 비해 AI 개발 과정에서 다른 과정을 차트하고 있습니다. 기술 벤치 마크 및 API 통합에만 초점을 맞추는 대신 "스크린 인식"AI 비서 우선 순위를 정합니다.

MCP : AI 시스템이 외부 도구에 액세스 할 수 있도록 권한을 부여합니다 MCP (Model Context Protocol)를 사용하면 AI 애플리케이션이 표준화 된 인터페이스를 통해 외부 도구 및 데이터 소스와 상호 작용할 수 있습니다. MCP를 통해 MCP는 인류에 의해 개발되고 주요 AI 제공 업체가 지원하는 언어 모델 및 에이전트가 사용 가능한 도구를 발견하고 적절한 매개 변수로 전화 할 수 있습니다. 그러나 환경 충돌, 보안 취약점 및 일관되지 않은 교차 플랫폼 동작을 포함하여 MCP 서버 구현에는 몇 가지 과제가 있습니다. Forbes 기사 "Anthropic의 모델 컨텍스트 프로토콜은 AI 에이전트 개발의 큰 단계입니다."저자 : Janakiram MSVDocker는 컨테이너화를 통해 이러한 문제를 해결합니다. Docker Hub Infrastructure를 구축했습니다

최첨단 기술을 활용하고 비즈니스 통제력을 발휘하여 통제력을 유지하면서 수익성이 높고 확장 가능한 회사를 창출하는 비전 기업가가 사용하는 6 가지 전략. 이 안내서는

Google 사진의 새로운 Ultra HDR 도구 : 이미지 향상을위한 게임 체인저 Google Photos는 강력한 Ultra HDR 변환 도구를 도입하여 표준 사진을 활기차고 높은 동기 범위 이미지로 변환했습니다. 이 향상은 사진가 a

기술 아키텍처는 새로운 인증 문제를 해결합니다 에이전트 Identity Hub는 문제를 해결합니다. 많은 조직이 AI 에이전트 구현을 시작한 후에 만 기존 인증 방법이 기계 용으로 설계되지 않았다는 것을 발견 한 후에 만 발견합니다.

(참고 : Google은 회사 인 Moor Insights & Strategy의 자문 고객입니다.) AI : 실험에서 Enterprise Foundation까지 Google Cloud Next 2025는 실험 기능에서 엔터프라이즈 기술의 핵심 구성 요소까지 AI의 진화를 보여주었습니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
