Owens, 37, aggravated the injury in Sunday's 19-17 win over the Cleveland Browns, the Bengals said on their website (www.bengals.com).
"There's no swelling," Owens said, calling the injury minor. "It's one of those freak things."
The injury most likely means Owens's stay with the Bengals is over. He signed a one-year, $2 million contract in July.
He finished the season 17 yards shy of joining Jerry Rice and Randy Moss as the only NFL players with 10 1,000 yard seasons. The six-times All Pro selection had 983 yards and nine touchdowns on 72 catches this season.
Cincinnati (3-11) ended a 10-game losing streak with the win over the Browns.
Owens, who last week blamed his team's dismal record on poor coaching by the Bengals' staff, suffered the injury earlier this month.
"It happened two weeks ago when we played the Saints when I got undercut, but I didn't really realize it," Owens said. "I still played. I played that entire game and I played the entire game (the next) week."
He missed several days of practice last week and did not start on Sunday, but came in on the second play. He was injured four plays later.
Despite his age, Owens said he expected to play somewhere in the NFL next season.
"That's the least of my worries right now," he said. "I'll be back."
(Writing by Gene Cherry in Salvo, North Carolina, editing by Justin Palmer)