Skip to main content

Paper - Pytorch

Project description

Multi-Modality

Sonar Vision Mapping System

This project aims to recreate the vision mapping system inspired by Batman in "The Dark Knight." The system uses high-frequency sound pulses to create a real-time, three-dimensional map of an environment. It is designed for applications in security, surveillance, and search-and-rescue operations.

Features

  • Emit ultrasonic chirp signals
  • Record echoes and process the response
  • Calculate distances to objects based on echo timings
  • Construct and visualize a 3D point cloud of the environment

Requirements

  • Python 3.6+
  • numpy
  • sounddevice
  • scipy
  • matplotlib

Install

$ pip install svms

Usage

from svms.main import SonarVisionMappingSystem

# Example usage
sonar_system = SonarVisionMappingSystem()
sonar_system.run()

This script will emit ultrasonic pulses, record the echoes, and visualize the 3D point cloud of the environment.

Code Overview

SonarVisionMappingSystem Class

The main functionality is encapsulated in the SonarVisionMappingSystem class. Here's a breakdown of the key methods:

  • __init__(self, fs=44100, duration=0.5, f0=20000, f1=20000, num_directions=36, elevation_angles=9): Initializes the system with sampling frequency, duration, and frequency range for the chirp signal, along with the number of directions and elevation angles for mapping.

  • generate_chirp_signal(self): Generates a chirp signal.

  • record_response(self): Emits the chirp signal and records the response.

  • process_signal(self, response): Processes the recorded response to find echoes and calculate distances.

  • collect_data(self): Collects responses and distances for multiple directions and elevation angles.

  • plot_3d_mapping(self): Plots the 3D point cloud of the environment.

  • run(self): Runs the complete process of data collection and 3D mapping.

Example Usage

sonar_system = SonarVisionMappingSystem()
sonar_system.run()

Safety Considerations

The system uses ultrasonic frequencies (20 kHz), which are generally considered safe. However, ensure that the intensity of the emitted pulses is within safe limits, and avoid prolonged exposure to ultrasonic waves.

Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any enhancements or bug fixes.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

svms-0.0.2.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

svms-0.0.2-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file svms-0.0.2.tar.gz.

File metadata

  • Download URL: svms-0.0.2.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/23.3.0

File hashes

Hashes for svms-0.0.2.tar.gz
Algorithm Hash digest
SHA256 6835348f8f62d3e02938e139855d95c9317f7e753169f08c86d76ac20742e818
MD5 101fb064602006a9548b0902d610d295
BLAKE2b-256 b328ea6989960f8fcac2feaa2db3006360326529ca3e67f8ee70c555bd2d7080

See more details on using hashes here.

File details

Details for the file svms-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: svms-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/23.3.0

File hashes

Hashes for svms-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0f5e42af9453e7270697ba7ff0452c44981c37bbfd3aaecbb7c84f00ca6dfe79
MD5 6792702188b6e983d04da1b2e4d858bc
BLAKE2b-256 c9fc4d0c09a1494ec82d6f1e9e057270872a662063060d5a0652874bb45ce980

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page