MSc Student · Computer Science · Technion
I am advised by Or Litany (Technion) and Rajalakshmi Nandakumar (Cornell Tech). My research is in 3D computer vision, neural scene representation, and radar perception for autonomous systems.
VideoMDM: Towards 3D Human Motion Generation From 2D Supervision
A diffusion-based framework that trains 3D human motion priors directly from accurate 2D poses extracted from monocular videos, without any 3D ground truth.
arXiv / code / project page
Physics-informed underwater novel-view synthesis at real-time speed, with free scene dewatering at inference.
Text-guided image inpainting pipeline extending Stable Diffusion 2 with four algorithmic improvements and a full evaluation framework.
A real-life pintograph drawing machine paired with a Grasshopper simulator and interactive GUI.
Dual-arm UR5e manipulation using RRT* planning in configuration space, with collision avoidance, inverse kinematics, and real robot execution.
Real-time 3D rendering GUI built with OpenGL, featuring configurable shaders, mesh loading, and interactive lighting.
UnderwaterEVER bridges two competing approaches: the fast but physics-agnostic
EVER
renderer and the physically accurate but slow
SeaThru-NeRF.
It embeds a differentiable underwater image-formation model directly inside EVER's
volumetric renderer — replacing each segment's single color term with two physically
grounded terms: attenuated object color and depth-dependent backscatter.
The physics is controlled by WaterGlobal, a tiny module holding just
9 learnable scalars (σD, σB, cmed) shared across all views.
σD is seeded from per-channel image statistics and constrained by a spectral-ordering
loss (σD,R ≥ σD,G ≥ σD,B), reflecting how seawater absorbs red faster than green
faster than blue. Zeroing these parameters at inference yields free scene restoration
— color-corrected, dewatered views with no clean-water ground truth.
Results on the SeaThru-NeRF benchmark (4 scenes, RTX 6000 Ada):
27.22 dB avg. PSNR · 0.882 avg. SSIM · 20 FPS
— best on both metrics, matching EVER's speed to within 1.6%.
Built on top of the Hugging Face sd2-community/stable-diffusion-2-base model,
this pipeline improves the classic diffusion inpainting algorithm, in which the latent vector
is mixed with the original image in the unmasked region at each denoising step.
Four key improvements were introduced:
· Masked cross-attention — conditions generation on the unmasked context for better region awareness.
· Resampling — iteratively refines completions within each denoising step (configurable: full or t>500 cutoff).
· Mask dilation — expands the mask slightly for smoother boundary transitions.
· Guidance-scale scheduling — dynamically tunes generation quality across timesteps.
Also includes an evaluation framework comparing our pipeline against a simple baseline
and two SOTA fine-tuned models across three datasets (COCO, EditBench, MagicBrush),
and an interactive GUI tool for painting masks directly on images.
A fully functional pintograph drawing machine designed and built from scratch, paired
with a complete software stack for design and control.
The machine uses three independently driven discs (two arm discs + one rotating canvas)
to trace complex Lissajous-like paths. Speed ratios and rotation directions are the main
design parameters — small changes produce dramatically different patterns.
Software stack:
· Grasshopper plug-in — parametric simulation of the pintograph geometry
directly inside Rhino; tracks the pen-point path in real time to preview patterns before printing.
· PintoProc GUI (Processing 4 / Java) — controls all three motors via serial,
manages speed/direction/acceleration, runs a live pattern preview, and exports PNGs.
One click sends the configuration to the machine.
Created with Ashish Jain and Shay Sharvit as part of the studio course
Matter of Perspective, directed by Prof. Gershon Elber and Yoav Sterman.
A motion planning system for a dual-arm UR5e setup that picks up and relocates
cubes in a shared workspace. Planning runs entirely in the robot's configuration
space, with collision checking against the environment and the static arm.
Core algorithm: RRT* with k-nearest rewiring and shortcut path
smoothing. A goal-biased sampler steers the tree toward the target configuration;
edge validity is checked at a fixed resolution along the interpolated path.
The planner outputs a smooth, collision-free joint trajectory that is then
executed on the real robot.
Key components:
· Forward & inverse kinematics — analytical IK for the UR5e to convert
Cartesian end-effector targets to joint configurations.
· Environment model — cube positions and the second arm's static pose are
treated as dynamic obstacles updated between each pick-and-place step.
· Gripper control — Two-Finger gripper (TwoFG7) commands integrated into
the execution loop.
· Visualizer — 3D simulation of the planned path before real execution.
The improved RRT* plan runs significantly faster and with a shorter path than a
naive straight-line approach, as demonstrated in the lab video results.
A real-time 3D rendering engine with an ImGui interface, built from scratch in C++ and
OpenGL as part of the Computer Graphics course at Technion CS.
Rendering features:
· Shading modes — Phong, Gouraud, and Flat shading, each implemented as a separate
GLSL vertex/fragment shader pair.
· Texture mapping — UV-mapped diffuse textures on arbitrary OBJ meshes.
· Normal mapping — tangent-space normal maps for surface detail without extra geometry.
· Environment mapping — skybox cubemap with reflective/refractive materials
(as seen in the chrome cow render above).
· Shader animations — vertex-shader deformations (stretch along X/Y/Z axes, noisy turbulence) and fragment-shader effects (sinusoidal color cycling, procedural marble texture), all time-driven and toggleable from the GUI.
· Lighting — configurable point and directional lights with interactive controls.
The ImGui interface allows switching shaders, loading OBJ files, tweaking lighting
parameters, and manipulating the scene in real time.