The curry and tomato sauce here is made from the liquid the shrimp are poached in.
Peel and devein shrimp, reserving shells and leaving tails intact. Cover; refrigerate.
Heat oil in a medium saucepan over medium-low heat. Add onions and garlic; cook, stirring often, until onions are translucent, 5 to 7 minutes. Reduce heat to low; add shrimp shells, curry, lemongrass, ginger, and cardamom. Cook, stirring often, until shells are pink and mixture is very aromatic, about 5 minutes.
Add 4 cups water, tomato juice, and salt. Raise heat; bring to a boil. Reduce heat to medium low and simmer, skimming off scum as necessary, about 1 hour.
Combine the yogurt, cucumber, garam masala, lemon juice, and chopped mint or cilantro; cover with plastic and refrigerate.
Strain stock, pressing on solids, into a clean medium saucepan. Return to a boil. Reduce heat so stock is at a bare simmer. Add shrimp; poach, adjusting heat as needed to maintain a bare simmer, 3 to 4 minutes. Transfer shrimp to a dish; cover with foil. Raise heat to medium high; simmer liquid until it is reduced by about half, about 20 minutes. Pour the sauce over shrimp; garnish with cilantro sprigs and serve with reserved cucumber relish.
Pappadam, crisp lentil wafers available at Indian groceries, would be pair well with these shrimp.