Faits :
A.
Le 14 juin 2017, le Ministère public de l'arrondissement du Nord vaudois a ouvert une instruction pénale contre A._ pour infraction et contravention à la loi fédérale sur les stupéfiants et les substances psychotropes (LStup; RS 812.121) et pour infraction à la loi fédérale sur la circulation routière (LCR; RS 741.01).
Il était reproché à A._ de s'être livré au trafic de cannabis. La perquisition opérée le 19 juin 2017 dans la ferme qu'il louait à B._ avait permis la saisie de 558 plants de cannabis, de 26 grammes de graines de cannabis, de 24 grammes de haschich (emballage compris), de 3,7 grammes d'herba cannabis (emballage compris) et de matériel qui pourrait avoir servi à la culture de ces plantes. L'intéressé a admis cultiver du cannabis depuis 2014. Ayant déclaré consommer chaque jour entre 15 et 20 grammes de résine de cannabis, à savoir environ 20 joints, il était également mis en cause pour avoir circulé presque quotidiennement au volant de sa voiture, alors qu'il était sous l'influence de ces produits stupéfiants.
B.
Par ordonnance du 5 avril 2019, le Ministère public de l'arrondissement du Nord vaudois a ordonné le classement de la procédure pénale dirigée contre A._ pour infraction grave à la loi fédérale sur les stupéfiants, a alloué à l'intéressé une indemnité selon l'art. 429 al. 1 let. a CPP à hauteur de 1'615 fr. 50, TVA incluse, pour ses frais d'avocat liés avec les faits objets du classement, lui a refusé toute autre indemnité au sens de l'art. 429 CPP et a laissé les frais de cette ordonnance à la charge de l'Etat.
Par acte d'accusation du 10 avril 2019, le Ministère public de l'arrondissement du Nord vaudois a en revanche engagé l'accusation contre A._ devant le Tribunal correctionnel de l'arrondissement de la Broye et du Nord vaudois pour conduite en état d'incapacité pour avoir circulé presque quotidiennement au volant de sa voiture alors qu'il était sous l'influence de produits stupéfiants ainsi que pour infraction à la LStup pour s'être adonné à la culture indoor de cannabis, destinée à sa consommation personnelle et parfois à la remise à des tiers à titre gratuit ou en échange de matériel de culture notamment.
C.
Le 18 avril 2019, A._ a recouru contre l'ordonnance de classement du 5 avril 2019, concluant à l'octroi d'une juste indemnité sur la base de l'art. 429 CPP, à savoir 30'872 fr. 20 à titre d'indemnisation pour ses frais d'avocat, 45'800 fr. à titre d'indemnisation pour sa détention illicite et 6'947 fr. 10 à titre d'indemnité en relation avec le préjudice subi en raison du séquestre de son véhicule.
Statuant le 1er novembre 2019, la Chambre des recours pénale du Tribunal cantonal vaudois a rejeté le recours formé par A._ et a confirmé l'ordonnance attaquée.
D.
Contre ce dernier arrêt cantonal, A._ dépose un recours en matière pénale devant le Tribunal fédéral. Il conclut, principalement, à la réforme du jugement attaqué en ce sens qu'il lui est versé une indemnité au sens de l'art. 429 CPP (30'872 fr. 20 à titre d'indemnisation pour les frais d'avocat; 45'800 fr. à titre d'indemnisation pour détention illicite; 6'947 fr. 10 à titre d'indemnité en relation avec le préjudice subi à la suite du séquestre de son véhicule). A titre subsidiaire, il demande l'annulation de l'arrêt attaqué et le renvoi de la cause à l'autorité précédente pour nouvelle décision au sens des considérants.
Invités à se déterminer sur le recours, la cour cantonale y a renoncé, alors que le Ministère public a conclu au rejet du recours.
Considérant en droit :
1.
Le recourant dénonce une violation des art. 426 et 429 CPP.
1.1. Conformément à l'art. 426 al. 2 CPP, lorsque la procédure fait l'objet d'une ordonnance de classement ou que le prévenu est acquitté, tout ou partie des frais de la procédure peuvent être mis à sa charge s'il a, de manière illicite et fautive, provoqué l'ouverture de la procédure ou rendu plus difficile sa conduite.
La condamnation d'un prévenu acquitté à supporter tout ou partie des frais doit respecter la présomption d'innocence, consacrée par les art. 32 al. 1 Cst. et 6 par. 2 CEDH. Celle-ci interdit de rendre une décision défavorable au prévenu libéré en laissant entendre que ce dernier serait néanmoins coupable des infractions qui lui étaient reprochées. Une condamnation aux frais n'est ainsi admissible que si le prévenu a provoqué l'ouverture de la procédure pénale dirigée contre lui ou s'il en a entravé le cours. A cet égard, seul un comportement fautif et contraire à une règle juridique, qui soit en relation de causalité avec les frais imputés, entre en ligne de compte (ATF 144 IV 202 consid. 2.2 p. 204 s.; 119 Ia 332 consid. 1b p. 334; 116 Ia 162 consid. 2c p. 168).
Pour déterminer si le comportement en cause est propre à justifier l'imputation des frais, le juge peut prendre en considération toute norme de comportement écrite ou non écrite résultant de l'ordre juridique suisse pris dans son ensemble, dans le sens d'une application par analogie des principes découlant de l'art. 41 CO. Le fait reproché doit constituer une violation claire de la norme de comportement (ATF 144 IV 202 consid. 22 p. 205; 119 la 332 consid. 1b p. 334). Une condamnation aux frais ne peut se justifier que si, en raison du comportement illicite du prévenu, l'autorité était légitimement en droit d'ouvrir une enquête. Elle est en tout cas exclue lorsque l'autorité est intervenue par excès de zèle, ensuite d'une mauvaise analyse de la situation ou par précipitation. La mise des frais à la charge du prévenu en cas d'acquittement ou de classement de la procédure doit en effet rester l'exception (ATF 144 IV 202 consid. 2.2 p. 205; 116 Ia 162 consid. 2c p. 171).
1.2. Selon l'art. 429 al. 1 CPP, le prévenu qui est au bénéfice d'une ordonnance de classement ou qui est acquitté totalement ou en partie a droit à une indemnité pour les dépenses occasionnées par l'exercice raisonnable de ses droits de procédure (let. a), à une indemnité pour le dommage économique subi au titre de sa participation obligatoire à la procédure pénale (let. b) et à une réparation du tort moral subi en raison d'une atteinte particulièrement grave à sa personnalité, notamment en cas de privation de liberté (let. c). L'autorité pénale peut réduire ou refuser l'indemnité lorsque le prévenu a provoqué illicitement et fautivement l'ouverture de la procédure pénale ou a rendu plus difficile la conduite de celle-ci (art. 430 al. 1 let. a CPP).
La question de l'indemnisation du prévenu (art. 429 CPP) pour la procédure de première instance doit être traitée en relation avec celle des frais (art. 426 CPP). Si le prévenu supporte les frais en application de l'art. 426 al. 1 ou 2 CPP, une indemnité est en règle générale exclue (ATF 145 IV 94 consid. 2.3.2 p. 98; 137 IV 352 consid. 2.4.2 p. 357). La question de l'indemnisation doit être tranchée après la question des frais. Dans cette mesure, la décision sur les frais préjuge de la question de l'indemnisation (cf. ATF 145 IV 268 consid. 1.2 p. 272; 144 IV 207 consid. 1.8.2 p. 211; 137 IV 352 consid. 2.4.2 p. 357).
1.3. La cour cantonale a considéré que le recourant avait cultivé des stupéfiants ayant des effets de type cannabique en violation de l'art. 8 al. 1 let. d LStup. Elle a expliqué que cette disposition constituait une norme de comportement suffisante sous l'angle des art. 426 al. 2 et 430 al. 1 let. a CPP et que le comportement du recourant était propre à faire naître, selon le cours ordinaire des choses et l'expérience de la vie, le soupçon d'une infraction grave à la LStup, ce qui justifiait les mesures d'instruction et de contrainte prises à son égard dans la présente procédure.
Elle a estimé que, conformément à l'art. 426 al. 2 CPP, l'entier des frais de procédure auraient dû être mis à la charge du recourant, mais que, eu égard à l'interdiction de la reformatio in pejus, elle ne pouvait pas modifier l'ordonnance de classement sur ce point. Dans la mesure où la question de l'indemnisation du prévenu (art. 429 CPP) devait être traitée en relation avec celle des frais, elle a jugé que le recourant n'aurait pas dû se voir allouer une indemnité. En vertu de l'interdiction de la reformatio in pejus, elle n'est cependant pas revenue sur l'indemnité de 1'615 fr. 50, allouée au recourant pour ses frais d'avocat. Elle a pour le surplus rejeté les autres prétentions du recourant fondées sur l'art. 429 al. 1 let. b et c CPP.
1.4.
1.4.1. L'art. 8 al. 1 let. d LStup interdit la culture, l'importation, la fabrication ou la mise dans le commerce des stupéfiants ayant des effets de type cannabique. Se fondant sur l'art. 2a LStup, le Département fédéral de l'intérieur a établi, le 30 mai 2011, l'OTStup-DFI (RS 812.121.11). Entrée en vigueur le 1er juillet 2011, cette ordonnance qualifie de stupéfiants le cannabis, à savoir la plante de chanvre ou parties de plante de chanvre présentant une teneur totale moyenne en THC de 1,0 % au moins et tous les objets et préparations présentant une teneur totale en THC de 1,0 % au moins ou fabriqués à partir de chanvre présentant une teneur totale en THC de 1,0 % au moins (art. 1 al. 2 let. a OTStup-DFI et le tableau a-d de son annexe 1). La seule indication d'un taux plancher en THC de 1,0 % au moins ne saurait imposer de procéder à l'analyse du THC des produits litigieux, sous peine que ceux-ci ne puissent être qualifiés de stupéfiants. Même en l'absence de calcul scientifique du taux, l'élément objectif de l'infraction peut être considéré comme réalisé sur la base d'un ensemble d'éléments ou d'indices convergents propres à l'établir de manière suffisante (ATF 141 IV 273 consid. 3.1.2 p. 276 s.).
Contrairement à ce que semble croire la cour cantonale, l'art. 8 al. 1 let. d LStup n'est pas une norme de comportement qui aurait une portée indépendante des normes pénales définies aux art. 19 ss LStup (arrêts 1B_497/2011 et 1B_499/2011 du 30 novembre 2011 consid. 2.6 et les références citées; cf. ATF 126 IV 60 consid. 2a p. 62 s.). Le comportement interdit par l'art. 8 al. 1 LStup est sanctionné par l'art. 19 al. 1 LStup qui réprime la culture, l'importation, la fabrication et la mise dans le commerce de stupéfiants au sens des art. 2 et 8 al. 1 LStup.
1.4.2. Par acte d'accusation du 10 avril 2019, le ministère public a renvoyé le recourant en jugement pour délit et contravention à la LStup (art. 19 al. 1 let. a et c; art. 19a ch. 1 LStup) pour s'être adonné à la culture indoor de cannabis, destinée à sa consommation personnelle et parfois à la remise à des tiers à titre gratuit ou en échange de matériel de culture notamment. L'infraction définie à l'art. 19 al. 1 let. a LStup (culture et production de stupéfiants) fait donc l'objet d'une procédure séparée, qui n'est pas encore terminée selon l'arrêt attaqué. Tant qu'un jugement au fond n'est pas entré en force, le recourant est présumé innocent (art. 10 al. 1 CPP). La cour cantonale ne peut pas, dans une autre procédure, préjuger de la culpabilité du recourant. En déclarant que le recourant a cultivé des plantes de type cannabique en violation de l'art. 8 LStup avant tout jugement au fond, elle a violé la présomption d'innocence du recourant.
1.4.3. En conséquence, les art. 426 al. 2 et 430 CPP ne sont pas applicables en l'espèce. C'est donc à tort que la cour cantonale a refusé d'allouer au recourant toute indemnité en application de l'art. 429 CPP et n'a pas examiné les griefs du recourants relatifs à l'art. 429 CPP. Le recours doit être admis, l'arrêt attaqué doit être annulé et la cause renvoyée à la cour cantonale pour nouveau jugement dans le sens des considérants.
2.
Le recourant qui obtient gain de cause ne supporte pas les frais judiciaires et peut prétendre à une indemnité de dépens à la charge du canton de Vaud.
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis, l'arrêt attaqué est annulé et la cause est renvoyée à la cour cantonale pour nouvelle décision.
2.
Il n'est pas perçu de frais judiciaires.
3.
Le canton de Vaud versera au recourant la somme de 3'000 fr. à titre de dépens pour la procédure devant le Tribunal fédéral.
4.
Le présent arrêt est communiqué aux parties et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 5 mars 2020
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
La Greffière : Kistler Vianin