Skip to content
View KarimAmer45's full-sized avatar

Block or report KarimAmer45

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
KarimAmer45/README.md

Karim Amer

M.Sc. Mobile Robotics · Physical AI · Robot Learning · Simulation · 3D Vision · C++ / Python

Building reproducible robotics and perception systems: high-throughput simulation, sim-to-sim transfer, 6D pose evaluation, video object detection, sensor fusion, and safety.

LinkedIn Email

ROS2 Python C++ Docker PyTorch OpenCV Ansible Linux


Benchmarks at a Glance

Measured results and verified behaviors are linked to reproducible commands and committed artifacts in each repository.

Project What was measured or verified Result
C++ / MuJoCo Sim-to-Sim Same trained PPO policy · 100 held-out seeds · randomized domain · C++ kinematics vs. MuJoCo rigid-body contact Randomized: 43% → 55% success · 32% → 8% collision
ROS 2–Unity Digital Twin Live Gazebo → ROS 2 → Unity telemetry and deterministic safety watchdog 28–30 Hz odom · 20 Hz safety status · ≤0.55 s stop bound
LLM → ROS 2 Agent Natural-language goal → schema validation → safety clamp → deterministic ROS 2 execution Tool allowlist · turtlesim + Gazebo · JSONL audit trail
BOP 6-DoF Pose Evaluation Deterministic LM-O RGB-D subset · FPFH + RANSAC + ICP · 391 instances 0.3657 ADD(-S) recall · 0.5314 AUC · 467.90 ms
BuzzSet YOLOV++ Two-stage temporal detector on the four-class BuzzSet validation set 7.8% → 26.8% mAP · 47.7% AP50
ROS 2 C++ Safety Node C++ safety-filter callback · 10 M iterations · -O2 40 ns · 24 M calls/sec · 5 guard layers

Visual Results

C++ / MuJoCo Sim-to-Sim Transfer

The same seeded navigation task runs in a fast C++ kinematic backend and MuJoCo rigid-body simulation. A checked-in 100-seed transfer run exposes the success and collision gap directly.

C++ and MuJoCo transfer on the same seeded navigation task

Safety-Aware ROS 2–Unity Digital Twin

Gazebo drives the TurtleBot3 while Unity mirrors pose and lidar. A deterministic supervisor demonstrates obstacle stops, frozen-scan handling, and operator e-stop behavior.

Gazebo and Unity digital-twin demonstration

LLM → ROS 2 Command Interface

A tool-calling agent translates operator intent into allowlisted, schema-validated, safety-clamped ROS 2 actions across turtlesim and Gazebo backends.

LLM to ROS command demonstration

BOP 6-DoF Pose Evaluation

Reproducible LM-O RGB-D evaluation with native ADD/ADD-S metrics, a classical FPFH–RANSAC–ICP baseline, failure accounting, and committed reports.

BOP LM-O pose-error distributions

BuzzSet Temporal Video Object Detection

YOLOV++ temporal aggregation and YOLOX-Swin experiments improved four-class pollinator detection while exposing class-level failure patterns.

BuzzSet model comparison

ROS 2 C++ Teleoperation Safety Node

Five independent C++ guard layers—velocity clamp, acceleration limit, deadman timeout, e-stop, and obstacle stop—running live in Gazebo Sim.

ROS 2 C++ safety-node demonstration


Selected Projects

These are the strongest end-to-end systems and measured benchmarks; the mobile-robotics-* algorithm studies are grouped farther down.

Project Highlights
🔵 C++ / MuJoCo Navigation C++17 + pybind11 + Gymnasium · PPO · 860k steps/s native batch · domain randomization · sim-to-sim transfer
🔵 Safety-Aware ROS 2–Unity Digital Twin ROS 2 + Unity + Gazebo · C# · lidar fault injection · deterministic safety supervision · 16/16 tests
🔵 LLM → ROS 2 Command Interface Tool-calling · safety clamp · schema validation · JSONL logging · turtlesim + Gazebo
🔵 BOP 6-DoF Pose Benchmark BOP/LM-O RGB-D harness · ADD/ADD-S · FPFH + RANSAC + ICP · deterministic reports · Docker + CI
🔵 BuzzSet YOLOV++ 4-class pollinator video detection · YOLOV++ temporal pipeline · YOLOX-Swin · RF-DETR comparison · COCO AP
🔵 ROS 2 C++ Teleoperation Safety Node 5 guard layers · 40 ns callback · CMake · CI · Gazebo Sim · 11 YAML params
🔵 NavViz Unreal Unreal Engine 5 C++ renderer · PPO world-state streaming over TCP/JSON · real-time 3D visualization
🔵 GNSS-Denied Visual-Inertial Localization EKF sensor fusion · Docker · ROS 2 C++ wrapper · regression tests · 0.24 m outage RMSE
🔵 Explainable Vision Demo ResNet · EfficientNet · ViT · GradCAM · attention rollout · 3 Streamlit apps · CI

More Projects

ROS 2 & Systems

ML & Perception

Probabilistic Robotics

Planning & Classical CV


Technical Skills

Simulation & Physical AI: MuJoCo, Gymnasium, Gazebo, Unity, Unreal Engine, PPO, domain randomization, sim-to-sim transfer, reduced-order modeling
Robotics: ROS 2, rclcpp, rclpy, colcon, nav_msgs, sensor_msgs, tf2
Languages: Python, C++17, C#, JavaScript, MATLAB, Bash
ML / Vision: PyTorch · OpenCV · scikit-learn · Streamlit · GradCAM · SLAM
Infra: Docker · Ansible · Jenkins · GitHub Actions · FastAPI
Hardware: Arduino · PCB design · PLC/SCADA · embedded sensors and motor control


Research Interests

  • Mobile robot autonomy and field-deployable perception systems
  • Safety-aware teleoperation and human-supervised robot control
  • Sensor fusion and GNSS-denied localization
  • LLM-to-robot command interfaces
  • Multi-robot coordination

Contact

Open to research assistant, thesis, and robotics engineering opportunities in Physical AI, robot learning, simulation, perception, and safety-aware autonomy.

LinkedIn Email

Pinned Loading

  1. bop-6d-pose-evaluation bop-6d-pose-evaluation Public

    Reproducible BOP-format 6D object-pose evaluation harness with ADD/ADD-S metrics, an FPFH-RANSAC-ICP baseline, reports, Docker, and CI.

    Python

  2. cpp-gym-nav cpp-gym-nav Public

    Deterministic C++17/Gymnasium robot-navigation simulator with PPO, native batching, MuJoCo sim-to-sim transfer, domain randomization, and Unreal integration.

    Python

  3. gnss-denied-visual-inertial-localization gnss-denied-visual-inertial-localization Public

    EKF fusing IMU, visual odometry, and wheel odometry for robust localization during simulated GNSS outages

    Python

  4. llm_to_ros llm_to_ros Public

    LLM tool-calling agent with safety clamp bridging natural language commands to ROS 2 turtlesim and Gazebo

    Python

  5. ros2-cpp-teleop-safety-node ros2-cpp-teleop-safety-node Public

    C++ rclcpp safety node with five independent guard layers: velocity clamp, acceleration limit, deadman, e-stop, obstacle stop

    C++

  6. safety-aware-ros2-unity-digital-twin safety-aware-ros2-unity-digital-twin Public

    Safety-aware ROS 2–Unity digital twin with deterministic command supervision, lidar fault injection, and verified Gazebo integration.

    C#