Syrian activists say Islamic State militants killed at least 128 people in the town of Qaryatayn before losing control of the area to government forces.

The government troops and allied militias retook Qaryatayn, located in Homs province, on Saturday. Islamic State fighters had held the town for three weeks.

The Britain-based Syrian Observatory for Human Rights, which monitors the conflict in Syria, said Monday it had documented the killings and that Islamic State had accused the civilians of collaborating with President Bashar al-Assad's government.

The Observatory also said many of the killings took place in the final days before Syrian forces moved in.