사진 작가가 될 수없는 프로그래머는 좋은 사람이 아닙니다! 10 분 안에 그녀의 독점 "뷰티 카메라"를 얻으십시오.

항상 여자 친구가 사진 촬영 기술이 좋지 않다고 불평합니까? 내 마음 속으로는 여자 친구가 손을 잡고 디즈니 랜드에 갔을 때 여자 ​​친구가 기꺼이 사진을 찍어달라고했는데 어떻게 해야할지 몰랐다는 생각이 들었다. 얼굴과 허벅지의 초점이 맞지 않고 5 미터의 시야가 확보되어 그의 여자 친구를 즉시 짜증나게했습니다.

이 작은 장면이 어떻게 우리 프로그래머를 괴롭힐 수 있습니까? 프로그래머로서 프로덕트 매니저의 요구를 충족시킬 수 있지만 여자 친구의 요구는 몇 분 안에 해결할 수 있습니까? 그녀만을위한 "뷰티 카메라"를 신속하게 만들고, 얇은 얼굴, 큰 눈 및 기타 기능을 쉽게 달성하고, 여자 친구가 원하는대로 작동하게하고, 즉시 뷰티 효과를 얻을 수 있습니다.

1

"뷰티 카메라"는 어떻게 개발 되었습니까? 원리는 무엇입니까?

한 번의 탭으로 사진 속의 얼굴을 자동으로 감지 한 다음 눈을 확대하고 얼굴을 날씬하게 만들어 미화 효과를 얻을 수 있습니다. 이것이 어떻게 달성됩니까?

원칙은 매우 간단합니다. 화웨이 머신 러닝 서비스 얼굴 감지 기능 을 사용 하여 테스트를위한 최대 855 개의 핵심 포인트, 반환 얼굴 윤곽, 눈썹, 눈, 코, 입, 귀 및 기타 좌표 및 얼굴 편향 각도 및 기타 정보, 우리는 그래서 빨리이 정보를 기반으로 "뷰티 카메라"를 구축 할 수 있습니다, 얼굴을 아름답게, 심지어 사진의 관심을 높이기 위해, 같은 귀여운 스티커와 같은 몇 가지 흥미로운 요소를 추가 할 수 있습니다.

10 분 동안 "뷰티 카메라"개발 튜토리얼을 받으세요!

 1.  개발 준비

세부 준비 단계는 참조 할 수 있습니다 화웨이 개발자 얼라이언스 , 여기에 주요 개발 단계입니다.

1.1  프로젝트 수준 Gradle에서 Maven웨어 하우스 주소 구성

buildscript {
    repositories {
            ...
        maven {url 'https://developer.huawei.com/repo/'}
    }
}
 dependencies {
                              ...
        classpath 'com.huawei.agconnect:agcp:1.3.1.300'
    }
allprojects {
    repositories {
            ...
        maven {url 'https://developer.huawei.com/repo/'}
    }
}

1.2  파일 헤더 증가 구성

SDK 통합 후 파일 헤더에 구성 추가

 apply plugin: 'com.android.application'	 apply plugin: 'com.android.application'

1.3  애플리케이션 수준 Gradle에서 SDK 종속성 구성

dependencies{ 
    // 引入基础SDK
    implementation 'com.huawei.hms:ml-computer-vision-face:2.0.1.300'
    // 引入人脸轮廓+关键点检测模型包
    implementation 'com.huawei.hms:ml-computer-vision-face-shape-point-model:2.0.1.300'
    // 引入表情检测模型包
    implementation 'com.huawei.hms:ml-computer-vision-face-emotion-model:2.0.1.300'
    // 引入特征检测模型包
    implementation 'com.huawei.hms:ml-computer-vision-face-feature-model:2.0.1.300'
}

1.4 AndroidManifest.xml 파일에 다음 문을 추가하여 기계 학습 모델을 자동으로 업데이트합니다.

<manifest
    ...
    <meta-data
        android:name="com.huawei.hms.ml.DEPENDENCY" 
        android:value= "face"/>
    ...
</manifest>

 1.5  카메라 허가 신청

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />

2.  코드 개발

2.1   기본 매개 변수 구성을 사용하여 얼굴 분석기 만들기

analyzer =   MLAnalyzerFactory.getInstance().getFaceAnalyzer();

2.2   분석기가 사진을 감지 할 수 있도록 android.graphics.Bitmap을 통해 MLFrame 객체 생성

MLFrame frame = MLFrame.fromBitmap(bitmap);

2.3   얼굴 감지를 위해 " asyncAnalyseFrame "메소드 호출

Task<List<MLFace>> task = analyzer.asyncAnalyseFrame(frame);
task.addOnSuccessListener(new OnSuccessListener<List<MLFace>>() {
     @Override
     public void onSuccess(List<MLFace> faces) {
         // 检测成功,获取脸部关键点信息。
     }
 }).addOnFailureListener(new OnFailureListener() {
     @Override
     public void onFailure(Exception e) {
         // 检测失败。
    }
 });

2.4   다양한 정도의 큰 눈과 안면 성형 치료를위한 진행 표시 줄을 통해.

magnifyEye 메서드와 smallFaceMesh 메서드를 호출하여 각각 큰 눈 알고리즘과 얇은 얼굴 알고리즘을 구현합니다.

private SeekBar.OnSeekBarChangeListener onSeekBarChangeListener = new SeekBar.OnSeekBarChangeListener() {
    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
        switch (seekBar.getId()) {
            case R.id.seekbareye: // 当大眼进度条变化时,…
            case R.id.seekbarface: // 当瘦脸进度条变化时,…
        }
    }
}

2.5  테스트가 완료되면 분석기를 놓습니다.

try {
    if (analyzer != null) {
        analyzer.stop();
    }
} catch (IOException e) {
    Log.e(TAG, "e=" + e.getMessage());
}

먼저 간단한 "뷰티 카메라"의 데모를 살펴 보겠습니다!

2

어때요, 당신은 그것을 배웠습니까? 빨리 여자 친구 한정판 "뷰티 카메라"를 얻으십시오, 큰 눈과 얼굴 리프팅 기능을 실현할 수있을뿐만 아니라, 귀여운 작은 스티커 기능, 스마일 캡처 기능 등을 추가 할 수도 있습니다.이 모든 기능은 연결하여 빠르게 실현할 수 있습니다. 기계 학습 서비스에! 여자 친구 앞에서도 과시하고 싶다면 GitHub 소스 코드 를 다운로드하세요 .

>> Huawei Developer Alliance공식 웹 사이트를 방문하여 자세한 내용을 확인하십시오.

>> 개발 지침 문서 받기

>> Huawei 모바일 서비스 오픈 소스웨어 하우스 주소 : GitHub , Gitee

우리를 팔로우하고 처음으로 Huawei Mobile Services의 최신 기술 정보에 대해 알아보세요 ~

 

추천

출처blog.csdn.net/HUAWEI_HMSCore/article/details/113857313