my blog에 튜토리얼에 이상이 있음을 지적했습니다.
부품 5) 좌표계 조정 : 창과 이미지의 좌표를 변경해야한다고 말하면서는 안되는 작업입니다. 튜토리얼에서와 같이 CoreImage 좌표와 일치하도록 뷰/창 (UIKit 좌표로)을 변경해서는 안됩니다. 다른 방법으로 수행해야합니다.
이
그렇게하는 관련 코드의 일부입니다
(할 수 있습니다
here에서 직접
my blog post 또는에서 전체 샘플 코드를 얻을 그것은이 너무 CIFilters를 사용하는 다른 예를 들어 있습니다. D)를
// Create the image and detector
CIImage *image = [CIImage imageWithCGImage:imageView.image.CGImage];
CIDetector *detector = [CIDetector detectorOfType:CIDetectorTypeFace
context:...
options:...];
// CoreImage coordinate system origin is at the bottom left corner and UIKit's
// is at the top left corner. So we need to translate features positions before
// drawing them to screen. In order to do so we make an affine transform
CGAffineTransform transform = CGAffineTransformMakeScale(1, -1);
transform = CGAffineTransformTranslate(transform,
0, -imageView.bounds.size.height);
// Get features from the image
NSArray *features = [detector featuresInImage:image];
for(CIFaceFeature* faceFeature in features) {
// Get the face rect: Convert CoreImage to UIKit coordinates
const CGRect faceRect = CGRectApplyAffineTransform(
faceFeature.bounds, transform);
// create a UIView using the bounds of the face
UIView *faceView = [[UIView alloc] initWithFrame:faceRect];
...
if(faceFeature.hasMouthPosition) {
// Get the mouth position translated to imageView UIKit coordinates
const CGPoint mouthPos = CGPointApplyAffineTransform(
faceFeature.mouthPosition, transform);
...
}
}
을 입 위치 (mouthPos
)를 얻으면 간단히 물건을 그 위에 또는 그 근처에두기 만하면됩니다.
이 거리는 실험적으로 계산 될 수 있으며 눈과 입에 의해 형성된 삼각형에 상대적이어야합니다. 나는 가능하면이 거리를 계산하기 위해 얼굴을 많이 사용합니다 (트위터 아바타?)
이 그들을 더 읽을 수 있도록 지역 사회가 한 일이 도움이 :)
편집 질문에 도움이되기를 바랍니다 만, 완전히 다시 작성 그들과 존재하지 않는 문장을 추가하는 것은 또 다른 것이다. @Brad Larson은 'iOS 5의 핵심 이미지가 얼굴 인식을 지원한다는 것을 알고 있습니다.' 사용자는이를 알지만 어떻게 이것을 추정 할 수 있습니다. 내가 이것을 지적한 유일한 이유는 내가이 대답을 내 대답에 언급했기 때문에 나는 그 질문을 전혀 읽지 않은 것처럼 내 대답을 본다! – bandejapaisa
@bandejapaisa - iOS 5.0의 Core Image에 대한 튜토리얼 (링크 된 블로그 게시물의 제목에 설명되어 있음)에 연결된 Asker가 있으므로 향후 어느 시점에서 죽었을 경우를 대비하여 링크에 있었던 것을 표현하고 싶습니다. . 그런 다음 그들은 이것이 자신의 필요에 비해 충분하지 않다는 것을 지적 했으므로 코어 이미지가 왜 좋은 해결책이 아닌지를 설명하는 질문을 명확히했습니다. 그들이 제시하는 링크의 내용을 감안할 때 이것이 정당화 된 것이라고 생각합니다. –