Faits :
A.
Par acte du 24 septembre 2018, le Ministère public de l'arrondissement du Nord vaudois a engagé l'accusation contre B._ devant le Tribunal de police de l'arrondissement de la Broye et du Nord vaudois pour pornographie; il lui est reproché d'avoir entre 2011 et 2017 téléchargé sur des disques durs au moins 507 fichiers (photo ou vidéo) à caractère pornographique impliquant des fillettes de moins de 16 ans, ainsi que d'avoir mis à disposition sur des réseaux peer-to-peer en 2016 au moins 14 fichiers vidéo de pédopornographie. Le Ministère public a renoncé à intervenir aux débats et a présenté des réquisitions.
Le 14 novembre 2018, B._, par l'intermédiaire de son avocat Me Xavier Oulevey, a requis qu'une expertise technique soit mise en oeuvre ou, subsidiairement, que des questions soient posées à un expert informatique afin notamment de déterminer si le téléchargement de masse, tel que celui qu'il avait opéré, pouvait inclure, sans qu'il le souhaite, des dossiers contenant des fichiers au contenu illicite. A la demande du Vice-président du Tribunal de police, B._ a proposé un dénommé A._ comme expert.
Le 26 novembre 2018, le Vice-président du Tribunal de police a soumis le questionnaire produit par Me Xavier Oulevey à l'expert A._. Ce dernier a transmis son rapport par courrier du 30 novembre 2018; le 16 janvier 2019, il a déposé un rapport complémentaire après avoir pu consulter, dans les locaux du tribunal, les disques durs externes qui avaient été séquestrés.
Par jugement du 19 septembre 2019, le Tribunal de police a condamné B._ pour pornographie à une peine pécuniaire de 120 jours-amende, le montant du jour-amende étant fixé à 50 fr., avec sursis pendant trois ans; lors des débats, l'expert avait été entendu à la demande B._.
B.
Le 30 septembre 2019, le Ministère public central, division affaires spéciales, a déposé auprès de la Chambre des recours pénale du Tribunal cantonal vaudois une demande de récusation de l'expert au motif qu'il existait un lien de confiance particulier entre l'avocat de B._ et l'expert et que ce dernier a pu être influencé par cet avocat; il a indiqué que la Procureure en charge du dossier n'avait découvert le motif de récusation qu'au moment de consulter le dossier le 27 septembre 2019, après réception, en date du 24 septembre 2019, du jugement de condamnation précité. Il a en outre exposé que le Ministère public possédait la qualité de partie et que l'expertise technique avait été mise en oeuvre puis réalisée sans qu'il n'en ait été avisé, en violation des art. 184 ss CPP et de son droit d'être entendu. Le 3 octobre 2019, le Ministère public central a déposé un complément à sa demande de récusation.
B._ a conclu au rejet de la demande de récusation.
C.
Parallèlement, le Ministère public a déposé une annonce d'appel le 30 septembre 2019, puis une déclaration d'appel le 11 octobre 2019 à l'encontre du jugement du 19 septembre 2019. Dans le cadre de cette procédure d'appel, le Ministère public a demandé le retranchement de l'expertise technique diligentée par A._ et a déclaré ne pas s'opposer à la mise en oeuvre d'une nouvelle expertise.
D.
Le 5 décembre 2019, la Chambre des recours pénale a déclaré irrecevable la demande de récusation de l'expert présentée le 30 septembre 2019. Elle a considéré qu'elle n'était plus compétente pour statuer sur cette demande, dès lors que le jugement de fond du Tribunal de police avait été rendu; seule la voie de l'appel était ouverte.
E.
Par acte 20 janvier 2020, le Ministère public forme un recours en matière pénale contre cet arrêt, concluant à l'annulation de l'arrêt entrepris et au renvoi de la cause à l'autorité précédente pour nouvelle décision.
L'instance précédente renonce à se déterminer et se réfère aux considérants de sa décision. B._ conclut à l'irrecevabilité du recours en matière pénale et subsidiairement à son rejet.
Considérant en droit :
1.
Conformément aux art. 78 et 92 al. 1 LTF, une décision prise en dernière instance cantonale relative à la récusation d'un magistrat dans une procédure pénale peut faire immédiatement l'objet d'un recours en matière pénale, malgré son caractère incident. Le Ministère public a qualité pour recourir dès lors qu'il a un intérêt juridique à faire annuler l'arrêt d'irrecevabilité rendu par l'autorité précédente qui le prive de l'examen de sa demande de récusation (art. 81 al. 1 LTF). Le fait que le Ministère public a, dans le cadre de son appel, demandé le retranchement de l'expertise réalisée par l'expert intimé ne change rien à cette appréciation.
Le recours a en outre été déposé en temps utile et les conclusions qui y sont prises sont recevables (art. 107 al. 1 LTF). Il y a donc lieu d'entrer en matière.
2.
Le Ministère public fait grief à la Chambre des recours pénale d'avoir déclaré irrecevable sa demande de récusation. Il affirme que l'instance précédente était compétente en vertu de l'art. 59 al. 1 let. b CPP, appliqué par analogie. Il ajoute que la juridiction d'appel ne pouvait examiner la question de l'indépendance de l'expert sur la base des art. 339 al. 2 let. d, 343 al. 2 et 389 al. 2 CPP; il relève également que selon l'art. 59 al. 1 CPP la procédure de récusation doit être tranchée sans administration supplémentaire de preuves. Enfin, le Ministère public invoque à titre subsidiaire une violation de l'art. 91 al. 4 CPP : si la juridiction d'appel était compétente, l'autorité de recours aurait dû transmettre à celle-ci la requête de récusation du 30 septembre 2019 et non pas rendre une décision d'irrecevabilité.
2.1. Dans le cas d'espèce, la Chambre des recours pénale a déclaré irrecevable la demande de récusation au motif qu'elle n'était plus compétente pour statuer sur la demande de récusation du 30 septembre 2019 visant l'expert intimé puisque le Tribunal de police avait rendu son jugement au fond le 19 septembre 2019 et que seule la voie de l'appel était ouverte. Elle a rappelé que l'appel est la voie de recours principale prévue par le CPP et qu'il emporte un effet dévolutif et réformatoire puisque, conformément à l'art. 408 CPP, lorsque la juridiction d'appel entre en matière, elle rend un nouveau jugement qui remplace le jugement de première instance. La cour cantonale a du reste relevé que, parallèlement à sa demande de récusation, le Ministère public a interjeté appel contre le jugement du 19 septembre 2019, par annonce d'appel puis par déclaration d'appel des 30 septembre et 11 octobre 2019, et qu'il a, dans ce cadre, contesté la validité des pièces diligentées par l'expert, demandé le retranchement de celles-ci et ne s'est pas opposé à la mise en oeuvre d'une nouvelle expertise.
Selon la cour cantonale, le Ministère public ne serait pas lésé par cette solution puisque l'autorité d'appel jouit d'un plein pouvoir d'examen en fait et en droit sur tous les points attaqués du jugement (art. 398 al. 2 CPP); cette dernière a, d'une part, la possibilité de répéter l'administration des preuves si des dispositions en matière de preuves ont été enfreintes (art. 389 al. 2 let. a CPP) et doit, d'autre part, en vertu de l'art. 405 al. 1 CPP, réitérer l'administration des preuves qui n'ont pas été diligentées en bonne et due forme (art. 343 al. 2 CPP); en outre, l'autorité d'appel est habilitée à examiner la légalité des moyens de preuve qui lui sont soumis dans le cadre de sa procédure ou dans son jugement au fond (art. 339 al. 2 let. d CPP). Selon la cour cantonale, la juridiction d'appel est compétente pour statuer sur la validité des moyens de preuve auxquels a pris part l'expert devant l'autorité de première instance et donc pour examiner les questions de la régularité des rapports d'expertise déposés par l'expert et de l'indépendance de celui-ci; le cas échéant, la juridiction d'appel aura la possibilité, en cas de vices, de répéter l'administration des preuves concernées ou d'annuler le jugement du 19 septembre 2019 et renvoyer la cause au tribunal de première instance pour complément d'instruction et nouveau jugement.
2.2. Selon une jurisprudence constante, l'autorité de recours au sens de l'art. 20 CPP est l'autorité compétente pour statuer sur une demande de récusation visant un expert, conformément à l'art. 59 al. 1 let. b CPP applicable par analogie (arrêt 1B_488/2011 du 2 décembre 2011 consid. 1.1; cf. également arrêts 1B_594/2019 du 10 janvier 2020 consid. 1.3; 1B_148/2017 du 6 juillet 2017 consid. 2.1; 1B_196/2016 du 1 er juillet 2016 consid. 2), soit dans le canton de Vaud la Chambre des recours pénale (art. 13 al. 1 de la loi cantonale d'introduction du Code de procédure pénale suisse du 19 mai 2009 [LVCPP; RSV 312.01]).
Le cas d'espèce présente certes la singularité que le motif de récusation a été découvert après le prononcé du Tribunal de première instance et qu'il a été invoqué, auprès de la Chambre des recours pénale, parallèlement à une annonce d'appel. La doctrine considère, en se référant à la jurisprudence rendue en matière civile, que lorsqu'un motif de récusation est découvert, comme en l'espèce, après la notification de la décision finale, il doit être invoqué par la voie de droit prévue contre ladite décision (MARKUS BOOG, in Basler Kommentar, Schweizerische Strafprozessordnung, 2ème éd. 2014, no 6 ad art. 58 CPP). La Chambre des recours pénale considère elle aussi que, dans cette configuration particulière, le motif de récusation doit être invoqué exclusivement par la voie de l'appel auprès de la juridiction d'appel qui jouit d'un plein pouvoir d'examen sur tous les points attaqués du jugement (cf. art. 398 al. 2 CPP). Ce raisonnement ne peut être suivi. La découverte du motif de récusation après le prononcé du jugement du Tribunal de première instance, pendant le délai d'appel, ne permet pas de déroger à la règle de compétence de l'art. 59 al. 1 let. b CPP, applicable par analogie. Cette solution assure une certaine cohérence et uniformité de la procédure de récusation.
Comme relevé par le Ministère public, la solution préconisée par l'instance précédente conduit à une incohérence en matière de délai. Il est en effet constant que le motif de récusation doit être invoqué sans délai dès que l'intéressé en a eu connaissance, sous peine d'être déchu du droit de s'en prévaloir ultérieurement (art. 58 al. 1 CPP); selon la jurisprudence, la partie doit dans la règle agir, au plus tard, dans les six à sept jours (cf. arrêts 1B_496/2019 du 28 février 2020consid. 3.3; 1B_14/2016 du 2 février 2016 consid. 2 et les réf.). Or, admettre l'invocation d'un motif de récusation dans l'acte d'appel - soit dans les 20 jours suivant la notification du jugement motivé - contreviendrait à cette exigence d'immédiateté posée par l'art. 58 al. 1 CPP. De surcroît, plusieurs mois peuvent s'écouler avant que le Tribunal de première instance ne motive son jugement par écrit, celui-ci disposant d'un délai de 60 jours, exceptionnellement 90, pour le faire (art. 84 al. 4 CPP), et donc, a fortiori, avant que la juridiction d'appel ne soit enfin saisie (art. 399 al. 2 CPP). Dans ce contexte, le principe de célérité qui prévaut en matière de récusation plaide également pour la compétence de la Chambre des recours pénale.
2.3. Sur le vu de ce qui précède, la Chambre des recours pénale aurait dû entrer en matière sur la requête de récusation formée par le Ministère public. Partant, cette autorité ne pouvait pas déclarer la demande de récusation du 30 septembre 2019 irrecevable. Ce faisant, la juridiction précédente a violé le droit fédéral et ce grief doit être admis. Le moyen tiré d'une violation de l'art. 91 al. 4 CPP, invoqué par le recourant, est donc sans objet.
3.
Le recours est admis. L'arrêt attaqué est annulé et la cause est renvoyée à l'autorité précédente pour qu'elle entre en matière sur la demande de récusation de l'expert A._ formée par le Ministère public. Conformément à l'art. 66 al. 1 LTF, les frais de la cause sont mis à la charge de B._ qui succombe. Le Ministère public n'a pas droit à des dépens (art. 68 al. 1 et 3 LTF).
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis. La décision du 5 décembre 2019 de la Chambre des recours pénale du Tribunal cantonal vaudois est annulée. La cause est renvoyée à cette autorité pour qu'elle entre en matière sur la demande de récusation de l'expert A._ formée par le Ministère public.
2.
Les frais judiciaires, arrêtés à 2'000 fr., sont mis à la charge de B._.
3.
Le présent arrêt est communiqué aux parties, à B._ et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 8 mai 2020
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Chaix
La Greffière : Arn