사람을 감지하는 가장 저렴하고 쉬운 방법은 무엇입니까?


15

누구든지 표준의 저렴한 센서를 사용하여 온몸의 포유류 (예 : 인간)를 성공적으로 감지했는지 알고 싶습니다.

이상적으로는 저렴한 센서 또는 센서 조합을 사용하여 방 안의 사람을 감지하고 그 사람을 현지화하고 싶습니다. 로봇이 방에 들어가서 사람이 있는지 감지 한 다음 감지 된 사람으로 이동하고 싶습니다. 비용이 더 중요한 요소이므로 정확도는 100 % 일 필요는 없습니다. 나는 그러한 센서의 계산 요구 사항이 Arduino에서 실행될 수 있기를 원하지만 불가능한 경우 Raspberry Pi 또는 BeagleBone Black과 같은 더 강력한 힘을 가진 무언가를 기꺼이 활용할 것입니다. 몇 가지 생각이 있습니다. 그러나 그들 중 누구도 이상적이지 않습니다.

  1. PIR 센서 -넓은 시야 (즉, 일반적으로 120도 이상) 내에서 움직임을 감지 할 수 있습니다. 내가 아는 "인간"감지기에 가장 가까운 것일 수 있습니다. 그러나, 그러한 넓은 시야로 인해 사람이 매우 어려울 수있는 곳에서 움직임과 국소화 / 삼각 화가 필요합니다.
  2. 초음파 -물체를 정밀하게 감지 할 수 있습니다. 시야가 훨씬 좁습니다. 그러나 정적 비 생물체와 인간을 구별 할 수는 없습니다.
  3. IR 감지기 -(예 : 날카로운 범위 센서) 매우 정밀하고 매우 좁은 화각으로 물체를 다시 감지 할 수 있습니다. 그러나 개체를 다시 구별 할 수 없습니다.
  4. 웹캠 + OpenCV- 얼굴 감지 기능을 사용하여 방에있는 사람을 감지 할 수 있습니다. 이것이 최선의 선택 일 수 있습니다. 그러나 OpenCV는 계산 비용이 많이 들며 arduino보다 훨씬 많은 것을 실행해야합니다. 라즈베리 파이에서도 느려질 수 있습니다.
  5. Kinect - Kinect 의 기능 감지 기능을 사용하면 특정 지역의 사람을 쉽게 식별 할 수 있습니다. 그러나 Kinect는 너무 비싸서 "저렴한"솔루션이라고는 생각하지 않습니다.

아마도 누군가가 체온에 맞춘 저렴한 "열 감지기"를 알고 있거나 위의 (# 1-4) 조합으로 성공했으며 그 결과를 공유하고 싶습니까?


인간에게만 국한됩니까 아니면 Ed 씨도 인정해야합니까?
ott-- 2018 년

따뜻한 몸매의 포유류. 그것은 실내에서 사용될 것이므로 Ed 씨는 거기에 있으면 안됩니다. 그러나 만약 그가 있었다면, 그는 감지 될 것이다. =)
Yahma 2016 년

나는 Kinect가 실제로 그렇게 비싸지 않다는 것을 이해하도록 이끌었다. 그러나 제대로 작동하려면 최소 거리가 필요합니다. 여전히 귀하의 요구 사항에 따라 작동 할 수 있으며 많은 코드가 있습니다.
갈라 하드 II.

어떤 솔루션을 사용하셨습니까? 더 긴 범위의 물건을 찾았습니까?
Crashalot

실제로 질문이 있습니다. Audrino의 아날로그 핀에 IR 센서를 사용하여 사람의 맥박수를 감지 할 수 있습니까? 그렇다면 어떻게? 도와주세요
sapana

답변:


7

수동 적외선 검출기 (PIR)와 소나 범위 파인더 (SRF)의 조합으로 트릭을 수행해야합니다.

이전에 나에게 잘 효과가 있었던 것은 (인간을 찾지는 못했지만 매우 유사 함) 왼쪽과 오른쪽에 두 개의 PIR을 두어 중간에 약간 겹치도록하는 것이 었습니다.
그런 다음 인간이 왼쪽, 오른쪽 또는 앞에 있는지 (둘 다 켜져있을 때) 알아낼 수 있습니다. 그런 다음 기본적으로 이것을 SRF 위에 쌓아 범위 등을 알려줍니다. 약간 더러 우며 약간의 가정을해야하지만 단순성을 위해 잘 작동합니다.

2 개의 PIR에 대한 의사 코드는 다음과 같이 간단합니다.

amount = 60; //degrees
while (notCloseEnough)
{
  if (bothActive)
    forward;
  else 
  {
    if (leftActive)  
      turnLeftByAmount(amount);
    else
      turnRightByAmount(amount);
    amount = amount - 5;

    //recalibrate
    if (amount <= 0)
      amount = 60;
  }

  checkIfCloseEnough();
}

아이디어는 해당 영역에서 무언가를 볼 때 한쪽을 60 도로 돌리는 것입니다. 만약 그들이 턴 후에 당신 앞에 있지 않다면, 당신이보고있는쪽으로 조금 덜 돌리십시오. 회전 수가 앞쪽에 올 때까지 계속 반복하고 좁 힙니다. '스코프를 벗어나면'빨리 움직이지 않기 때문에 일단 정면에 있으면 회전하지 않습니다 (각도 재설정).

나는이 알고리즘이 실제로 얼마나 잘 작동하는지 놀랐습니다 (우리는 자동화 된 체이스 장난감에 사용했으며 사람이 제어하는 ​​로봇을 너무 쉽게 치거나 잡을 수 있기 때문에 속도를 늦추거나 둔화시켜야했습니다).

두 센서 모두 Pololu에서 구입할 수 있습니다 (가맹 없음).

수동 적외선 검출기
소나 거리 측정기


PIR 센서 및 소나를 사용하여 사람을 감지하고 지역화하는 방법에 대한 의사 코드 또는 자세한 내용을 게시 할 수 있습니까?
Yahma

이 솔루션의 범위는 무엇입니까? 최대 300 피트 거리의 사람들을 추적 할 수 있습니까? 그리고 움직이는 부분이없는 180 도의 시야각을 수용하도록 만들어 졌습니까? 이 제안에 감사드립니다!
Crashalot

PIR 데이터 시트에는 범위 ( pololu.com/file/0J250/SE-10.pdf ) 가 나와 있지 않지만 센서 크기에 따라 범위가 제한되어 있고 사람을 감지 할 수없는 것으로 보입니다 100 ~ 300 피트 거리?
Crashalot

이것은 2 ~ 3 미터 (6 ~ 9 피트)의 작은 거리에서도 잘 작동했습니다. 또한이 알고리즘은 더 큰 거리에 잘 맞지 않을 것이라고 생각합니다. 예를 들어 로봇이나 피사체가 너무 멀어지기 전에 큰 '오류'나 변동이 수정 될 수 있다는 사실에 달려 있습니다.
profMamba

1

사용 가능한 최신 센서 유형은 Omron (D6T 범위) 또는 Excelitas (DigiPile)의 MEMS 기반 온도 배열입니다. 이들은 PIR 요소와 달리 절대 온도를 측정하여 배경 온도와 전경 온도를 구분하고 온도 소스의 움직임과 정적 존재를 감지 할 수 있습니다.


이 센서가 최대 300 피트 거리의 사람들을 추적 할 수 있는지 알고 있습니까?
Crashalot

나는 그것이 효과가 있다고 생각하지 않습니다. 나는 최대 5-10m를 말할 것입니다. 해상도가 매우 낮기 때문에이 거리에있는 사람은 한 픽셀 내의 작은 점일뿐입니다.
kjyv

답장을 보내 주셔서 감사합니다! 고해상도 컴퓨터 비전을 넘어 서면 300 피트 정도 작동하는 것이 있습니까? CV는 계산 비용이 너무 비싸기 때문에 CV를 PIR (또는 열)과 같은 다른 센서와 결합하여 100-300 피트 거리의 사람들을 추적하여 계산 비용을 줄일 수 있습니까?
Crashalot

0

용량 성 센서가 작동 할 수 있습니다. 알루미늄 호일과 몇 개의 저항 만 있으면 저렴합니다. 살을 감지 할 수는 있지만 육체 이외의 것을 감지하지 못하면 확실하지 않습니다 .3을 삼각 측량 할 수 있습니다.


응? 이것의 범위는 무엇입니까? 밀리미터?
RoboKaren

0

이것이 가장 쉬운 지 말할 수는 없지만 Eulerian Video Magnification 라이브러리 를 사용하여 사람의 맥박을 감지 할 수 있습니다 .

이 경우 비디오에서 예상되는 사람의 펄스 범위와 일치하는 변동을 찾고있을 것입니다. 또한 가시 펄스를 나타내는 신체 부위의 명확한 이미지가 필요합니다.

하드웨어 기반 얼굴 검출을 탐구하는 작업 ( 예 1 , 예 2 )도 있었다. 몇 년 전의 디지털 카메라에는이 기능이있었습니다.이 기능은 본질적으로 "이 정사각형에면이 포함되어 있는지 아닌지"라고 설계된 고도로 최적화 된 신경망이었습니다. 그런 다음 캡처 된 이미지에서 사전 정의 된 정사각형을 반복합니다.


Aww, 당신은 내가 쓰는 동안했던 것과 같은 것을 제안했습니다! Screamers (1995) 영화도 보았습니까? = P
jzx

나는 예고편을 보았지만 영화를 본 적이 없다. 그러나 Yahma는 무엇입니까? :)
Ian

0

PIR을 사용해 보았지만 처리 및 지연에 문제가 있습니다. 사람 감지가 정직한 것은 효율적인 선택이 아닙니다. 정전 용량 감지 기술은 사람이 가장 쉽고 가장 쉬운 방법 (지능형 선택)으로 사용하기에 복잡하지 않기 때문에 사용할 수 있습니다. 매우 저렴한 비용으로 센서를 만들 수 있으며 소규모 프로젝트에 적합합니다. "인간 탐지 로봇"프로젝트에서 하나를 사용했습니다. : 당신은 나의 비디오를 볼 수있는 용량 기반 인간 감지


0

향후 몇 년간 점점 인기를 얻게 될 비금속 솔루션은 무거운 데이터 처리 작업 (예 : 이미지에서 사람 인식)을 클라우드 서비스로 오프로드하는 것입니다. 기기가 인터넷에 연결되어 있다고 가정합니다. 다음은 Raspberry Pi 및 Google Cloud Vision API의 예입니다 ( https://www.dexterindustries.com/howto/use-google-cloud-vision-on-the-raspberry-pi/) . 평가판 기간이 지나면 Google 클라우드에 가입해야하지만 월간 N 개 미만의 요청을 서버에 제출하면 일부 다른 클라우드 비전 API (Amazon, Microsoft Azure, ...?)도 무료로 서비스를 제공 할 수 있습니다. .

소규모 플랫폼에서 대량의 데이터 처리를위한 또 다른 솔루션은 이미 훈련 된 머신 러닝 모델 (예 : Raspberry PI가 포함 된 Movidius Neural Compute Stick)을 실행하기위한 전용 프로세서 유닛을 사용하여 로봇의 썸 드라이브 같은 장치로 작업을 오프로드하는 것입니다. https : //medium.com/deep-learning-turkey/a-brief-guide-to-intel-movidius-neural-compute-stick-with-raspberry-pi-3-f60bf7683d40 ). 이것은 오프라인에서도 작동합니다. 그들은 여전히 ​​취미 프로젝트에 약간 비싸지 만 비용은 모든 것처럼 낮아질 것으로 기대합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.