Edmilson, 31, lämnar Barcelona efter fyra år i klubben.
Kontraktet med småstadsklubben Villarreal är på två år. Brassen förväntas bli presenterad på en presskonferens på måndag.
Edmilson har tidigare spelat för Sao Paulo och Lyon. Under tiden i Europa har han vunnit fem ligatitlar; tre franska och två spanska.