The Non-Cooperative Target Recognition (NCTR) system is an AI-powered tactical display that classifies aircraft based on their flight kinematics. Using a hybrid 1D-CNN + LSTM deep learning architecture, the system analyzes trajectory data (latitude, longitude, altitude, speed, vertical rate, and heading) to differentiate between three primary classes:
- Commercial: High inertia, smooth transitions.
- Fighter: High energy, aggressive combat maneuvers.
- Drone: Low inertia, hover-capable movement patterns.
The project features a synthetic flight data generator for training and a professional Streamlit-based tactical display for real-time demonstration.

notebooks/: Contains the model training and data generation notebook.web_app/: Streamlit application files (frontend and logic).models/: Directory for storing the trained.h5model.deepkinematics/: Core logic and shared utilities.
It is recommended to use a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activateInstall the required Python packages from the web_app directory:
pip install -r web_app/requirements.txt- Launch Jupyter Notebook or JupyterLab.
- Open and run all cells in
notebooks/NCTR.ipynb. - This notebook will:
- Generate synthetic flight trajectories for all three classes.
- Train the hybrid CNN-LSTM model.
- Validate performance using accuracy and confusion matrices.
- Save the final model as
deepkinematics_model.h5in the local notebook directory.
- Locate the generated
deepkinematics_model.h5file. - Move or copy this file into the
models/directory in the root of the project.# On Windows (PowerShell) Move-Item notebooks/deepkinematics_model.h5 models/ # On Linux/macOS mv notebooks/deepkinematics_model.h5 models/
Run the Streamlit application from the project root:
streamlit run web_app/app.py- Tactical 3D Plotter: Visualize aircraft trajectories in real-time.
- Intelligence Reports: Get classification results with confidence levels and probability distributions.
- Target Generation: Instantly simulate COM (Commercial), FGT (Fighter), or DRN (Drone) flight paths for analysis.
- Kinematic Telemetry: Live dashboards for Airspeed, Altitude, and Vertical Rate statistics.
- Deep Learning: TensorFlow / Keras (CNN + LSTM)
- Data Science: NumPy, Pandas, Scikit-learn
- Visualization: Plotly, Matplotlib
- Web Framework: Streamlit