Glad you mentioned Roma people. Boy, this will be long one.
I grew up in neighborhood with significant Roma population. I speak some language (not Romani Chib, Roma in Croatia speak different language, form of archaic Romanian, called bajaški). They, among themselves, are not unified, they are more tribal, so to speak. In short, it's complicated. I have Romani friends, my cousin dated Romani girl, been to couple of their weddings. If you are honest and respectful, they respect you back and treat you like one of their own. You cross one, whole family is after you.
Also, Romani is ethnicity, not a race (to be pedantic).
It's true, Romani people suffer from discrimination. No point in denying it. It's still problem. One of big problems is integration into broader society. Some of their cultural norms are very problematic ( underage marriages and pregnancies, blood feuds). Also, although elementary school is mandatory by law, they tend to drop out due to pressure from their parents and child protective services can't really do anything. While lots of them work legitimate jobs ( mostly in collecting recyclable metals), fair amount of them earn in grey to black area ( reselling stolen goods, begging etc). Lots of them live outside of system (no IDs, no drivers license, no official documents, some don't even have certificate of birth). They also have reputation of settling disputes violently ( and i can attest to that personally, still have scars from few altercations i had with some of them in my youth).
It's unfortunate, but it cuts both ways. Yes, we as majority need to drop some stereotypes and treat them better, but they also need to start embracing norms and laws of country. In essence, it's not racial per se, it's more socio economic problem.