Contents — find the section you need
Change parameters and verify
Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.
Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.
The experiment controls are in English.
अपने ब्राउज़र में प्रक्षेपित-क्षेत्र प्रयोग आज़माएँ
ऊपर दिया गया पैनल बिना Python इंस्टॉल किए कृत्रिम इमेज प्रयोग चलाता है। clean, green-tag, dim या clipped दृश्य चुनें; न्यूनतम चमक V, रुचि क्षेत्र (ROI) और mm/pixel बदलें। नौ प्रीसेट में सभी सात प्रकाशित स्थितियाँ, एक अंडरसाइज़्ड ROI और एक खाली चयन शामिल हैं। प्रीसेट प्रत्येक इनपुट को रीसेट करते हैं; सीमा को मैन्युअल रूप से बदलने से रिकवर्ड-डिम केस भी बदल जाता है।
इनपुट, इन-फ्रेम संदर्भ, निकाला गया मास्क और त्रुटि ओवरले का निरीक्षण करें। लाल फॉल्स पॉज़िटिव को चिह्नित करता है और नीला फॉल्स नेगेटिव को। एक भूरी सीमा इनपुट पर चयनित ROI को चिह्नित करती है। एक परिणाम को A के रूप में सहेजें और समान डिस्प्ले स्केल पर इमेज और मीट्रिक की तुलना करने के लिए एक इनपुट बदलें। डेटा तालिका क्षैतिज पिक्सेल रन देती है (शून्य-आधारित x/y और लंबाई); ये बिना डाउनसैंपलिंग के प्रत्येक इमेज क्षेत्र का ठीक-ठीक पुनर्निर्माण करते हैं। प्रयोग को बनाए रखने के लिए स्थितियाँ साझा करें या परिणाम JSON डाउनलोड करें।
इमेज मूल 320×240 ज्यामितीय दृश्य बने रहते हैं, जिसमें कोई वास्तविक-फोटो अपलोड या कैमरा इनपुट नहीं है। मूल NumPy ज्यामिति और मापन फ़ंक्शन अपरिवर्तित पुनः उपयोग किए जाते हैं। ब्राउज़र केवल OpenCV रूपांतरण/रेंज चयन को इसके तीन स्थिर RGB रंगों के एक सत्यापित लुकअप से बदलता है: पृष्ठभूमि (235,235,235), लक्ष्य (50,160,65) और डिम लक्ष्य (20,60,25)। उनके OpenCV 4.6.0 uint8 HSV मान (0,0,235), (64,175,160) और (64,170,60) हैं। यह कोई सामान्य-प्रयोजन HSV कनवर्टर नहीं है। H 35–85 और S 80–255 स्थिर रहते हैं; V न्यूनतम 0 से 255 तक समायोज्य है, दोनों शामिल। कोई मॉर्फोलॉजी लागू नहीं की गई है।
स्थिर टैग-बहिष्करण ROI (50,20,230,190) है; छोटा ROI (140,60,20,30) है, x/y/चौड़ाई/ऊँचाई पिक्सेल में। कोई भी किसी पौधे के अनुकूल नहीं होता। स्केल एक मान्य संदर्भ-तल रूपांतरण के रूप में 0.1 से 1.0 mm/pixel तक होता है, कोई अंशांकन नहीं। स्केल बदलने पर इमेज वही रहती है। touches_frame हाँ के लिए 1 और नहीं के लिए 0 के रूप में दिखाई देता है; एक खाली चयन में अपरिभाषित परिशुद्धता (—) होती है। एक क्लिप्ड दृश्य के लिए परफेक्ट IoU फिर भी इमेज के बाहर के हिस्सों के बारे में कुछ नहीं बताता। ये आउटपुट बायोमास, वृद्धि, तनाव या वास्तविक पत्ती-सतह क्षेत्र को नहीं मापते।
मूल डाउनलोड और सहेजे गए बेसलाइन अपरिवर्तित रहते हैं। नीचे दिए गए स्थानीय पुनरुत्पादन निर्देश वैकल्पिक हैं। ब्राउज़र एडाप्टर OpenCV के बिना NumPy का उपयोग करता है; इसे NumPy इंस्टॉल के साथ स्थानीय रूप से चलाने के लिए इसके एंट्रीपॉइंट, कर्नेल और पैलेट को एक साथ सहेजें।
CEA सेंसिंग और प्रवाह — CO₂ और पोषक विलयन को कहाँ मापें
समान डिस्प्ले भिन्न स्थानों और समय को संदर्भित कर सकते हैं
रिज़र्वॉयर DO ग्रोइंग चैनल के आउटलेट पर DO से भिन्न होता है। इस अंतर का श्रेय जड़ ऑक्सीजन खपत को देने से पहले, जाँचें कि क्या सेंसर तुलनीय समय का अवलोकन करते हैं, क्या अंशांकन सुसंगत है, और क्या सैंपल पारगमन में बदलता है।
रूट-ज़ोन गाइड ने EC, pH, DO और जल संतुलन को अलग किया। यह लेख पूछता है इन्हें कहाँ और कैसे तुलना करें। यह तापमान/आर्द्रता सेंसर गाइड से लैग और अंशांकन अवधारणाओं का पुनः उपयोग करता है, और CO₂, पोषक विलयन और प्रवाह से संबंधित मुद्दे जोड़ता है।
नीचे दी गई प्लेसमेंट तालिका और जाँच प्रक्रिया हमारा प्रस्तावित डिज़ाइन दृष्टिकोण है। ये सुविधा माप, आवश्यक सेंसर गणना या सार्वभौमिक फसल अलार्म सीमाएँ नहीं हैं।
तय करें कि आपको किन अंतरों का अवलोकन करना है
| लक्ष्य | उदाहरण तुलना बिंदु | साथी रिकॉर्ड |
|---|---|---|
| फसल-ज़ोन CO₂ | कैनोपी के निकट, आपूर्ति वायु, निकास या वापसी वायु | ऊँचाई, डोज़िंग, वेंटिलेशन, दरवाज़े, तापमान और RH |
| EC, pH और जल तापमान | मिश्रित रिज़र्वॉयर, ग्रोइंग-चैनल इनलेट और आउटलेट | स्रोत जल, मिश्रण, आयतन और परिसंचरण |
| DO | रिज़र्वॉयर, जड़ों के निकट, चैनल आउटलेट | तापमान, वातन और सेंसर तकनीक |
| तरल प्रवाह | मेकअप, चयनित शाखाएँ, निर्वहन | प्रवाह, स्थान और वाल्व स्थिति |
| स्तर और दाब | रिज़र्वॉयर, फ़िल्टर के ऊपर की ओर/नीचे की ओर | स्तर-से-आयतन संबंध, दाब संदर्भ और ऊँचाई |
| वायु गति | शेल्फ के आगे/पीछे और भिन्न ऊँचाइयाँ | प्रोब अभिविन्यास, औसत अवधि और पंखे की स्थिति |
निगरानी के लिए स्थायी बिंदुओं का और मानचित्रण के लिए पोर्टेबल मापों का उपयोग करें। एक गतिशील सर्वेक्षण के दौरान समय भिन्नता को अलग करने के लिए एक स्थिर संदर्भ बनाए रखें। स्थान ID को सेंसर ID से स्वतंत्र रूप से असाइन करें ताकि प्रतिस्थापन स्थान इतिहास को न तोड़ें।
क्या CO₂ स्व-अंशांकन उगाने की स्थितियों के अनुकूल है?
CO₂ आउटलेट के ठीक बगल में एक माप स्वतः पूरी कैनोपी का प्रतिनिधित्व नहीं करना चाहिए। इंजेक्शन, आपूर्ति/निकास वायु और मानव श्वास के साथ संबंधों को दर्ज करें। डोज़िंग उपकरण का निदान करने वाला बिंदु फसल की स्थितियों का आकलन करने वाले बिंदु से भिन्न उद्देश्य पूरा करता है।
अंशांकन एल्गोरिदम की जाँच करें। 2018 Sensirion SCD30 फ़ील्ड-अंशांकन नोट ASC का वर्णन करता है जो 400 ppm के अनुरूप न्यूनतम सांद्रता का उपयोग करता है और उस सांद्रता के नियमित संपर्क की आवश्यकता होती है।
हमारा अनुमान है कि लगातार समृद्ध कमरे इस धारणा को पूरा नहीं कर सकते। यह दस्तावेज़ीकृत एल्गोरिदम से संबंधित है, हर CO₂ सेंसर से नहीं। चयनित मॉडल और फर्मवेयर के निर्देशों का पालन करें और संदर्भ गैस या एक अंशांकित उपकरण के साथ तुलना की योजना बनाएं। ऐतिहासिक 400 ppm धारणा वर्तमान समय का गारंटीशुदा बाहरी अंशांकन मान नहीं है।
एक CO₂ डिवाइस में निर्मित तापमान/RH आउटपुट प्रतिनिधि कैनोपी वायु के बजाय उसके एनक्लोज़र का वर्णन कर सकते हैं। पर्यावरणीय क्षतिपूर्ति इनपुट को फसल पर्यावरण के मूल्यांकन में उपयोग किए जाने वाले मापों से अलग करें।
EC, pH और DO को अलग-अलग जाँचों की आवश्यकता है
USGS मल्टीपैरामीटर-इंस्ट्रूमेंट मैनुअल भंडारण, रखरखाव, अंशांकन, मापन और रिपोर्टिंग को जोड़ता है। इसका प्राकृतिक-जल दायरा फसल सेटपॉइंट या किसी विशेष पोषक विलयन के लिए उपयुक्तता स्थापित नहीं करता।
निम्नलिखित प्रस्तावित चेकलिस्ट उस सामान्य दृष्टिकोण को लागू करती है; वास्तविक प्रक्रियाओं और विलयनों को उपकरण दस्तावेज़ीकरण से मेल खाना चाहिए।
| पैरामीटर | सत्यापित करने योग्य आइटम |
|---|---|
| EC | चालकता मानक और तापमान, अपेक्षित सीमा, सेल स्थिरांक और तापमान क्षतिपूर्ति |
| pH | सीमा के अनुकूल बफर, तापमान, इलेक्ट्रोड/जंक्शन स्थिति और भंडारण |
| DO | ऑप्टिकल या इलेक्ट्रोकेमिकल विधि, अंशांकन स्थितियाँ, दाब/लवणता क्षतिपूर्ति, झिल्ली या कैप स्थिति |
| सभी | समायोजन-पूर्व त्रुटि, सफाई/समायोजन के बाद के परिणाम, मानक पहचान, तारीख और स्थिरीकरण समय |
एक मानक में सहमति इंस्टॉलेशन के बाद प्रतिनिधि रीडिंग स्थापित नहीं करती। मिश्रण के तुरंत बाद बुलबुले, जमाव, स्थिर तरल और स्थानीय सांद्रता अंतरों की जाँच करें।
DO तकनीक मायने रखती है। YSI का मापन मार्गदर्शन बताता है कि ऑप्टिकल सेंसर ऑक्सीजन की खपत नहीं करते और इनमें कोई मापन-सिद्धांत हलचल आवश्यकता नहीं होती, हालाँकि प्रवाह प्रतिक्रिया समय में सुधार कर सकता है। इलेक्ट्रोकेमिकल और ऑप्टिकल डिवाइस के लिए समान प्रवाह आवश्यकताएँ न मानें। एक ऑप्टिकल सेंसर को भी इच्छित रूट पर्यावरण का प्रतिनिधि तरल सैंपल करने की आवश्यकता होती है।
एक सैंपलिंग लाइन सेंसर तक पुराना तरल लाती है
एक रिमोट फ़्लो सेल डिस्प्ले समय को सैंपलिंग बिंदु की स्थितियों से अलग करता है। 0.50 L के कृत्रिम लाइन आयतन और 0.25 L/min के स्थिर प्रवाह के लिए, बिना मिश्रण या फैलाव के आदर्श विस्थापन मान लें:
दो मिनट केवल आदर्श लाइन परिवहन का वर्णन करते हैं। सेल मिश्रण, सेंसर प्रतिक्रिया और संचार विलंब अतिरिक्त प्रभाव हैं।
प्रवाह को दोगुना करके 0.50 L/min करने से यह आदर्श समय एक मिनट तक घट जाता है। वास्तविक लाइनें और सेल मिश्रित होते हैं; तापमान और गैस विनिमय भी सैंपल को बदल सकते हैं। टाइमस्टैंप को दो मिनट स्थानांतरित करना जरूरी नहीं कि मूल स्थितियों का पुनर्निर्माण करे।
सैंपलिंग स्थान, लाइन/सेल कॉन्फ़िगरेशन, प्रवाह, उपकरण मापन समय और प्राप्ति समय को अलग-अलग दर्ज करें। सैंपलिंग बिंदुओं के बीच स्विच करते समय, पिछले सैंपल से कैरीओवर की भी जाँच करें।
पंप कमांड, प्रवाह, स्तर और दाब की तुलना करें
पंप ON एक प्रवाह माप नहीं है। कुल डिलीवरी और प्रत्येक शाखा को डिलीवरी अलग-अलग अवलोकन हैं। चयनित फ़्लोमीटर की सीधी रन, पूर्ण पाइप, सीमा और बुलबुलों की आवश्यकताओं का पालन करें।
रिज़र्वॉयर ज्यामिति का उपयोग करके स्तर को आयतन में परिवर्तित करें। स्थिर क्रॉस-सेक्शन के लिए, आयतन परिवर्तन क्षेत्रफल गुणा स्तर परिवर्तन के बराबर होता है; यह रूपांतरण ढलान-तल वाले वेसल के लिए सार्वभौमिक नहीं है। दाब-आधारित स्तर संवेदन के लिए भी घनत्व और संदर्भ दाब पर विचार आवश्यक है।
फ़िल्टर डिफरेंशियल दाब तुलनाओं का समर्थन कर सकता है, लेकिन यह प्रवाह पर भी निर्भर करता है। जब परिचालन स्थितियाँ भिन्न होती हैं तो अकेले एक वृद्धि जमाव सिद्ध नहीं करती। मापन ऊँचाई, गेज बनाम निरपेक्ष दाब और इकाइयों को दर्ज करें।
असंगतियाँ खोजने के लिए एक जल-संतुलन अवशेष का उपयोग करें
यहाँ सीमा केवल रिज़र्वॉयर है। Q_{in} में हर आने वाली धारा शामिल है और Q_{out} में हर जाने वाली धारा, जिसमें परिसंचरण आपूर्ति और वापसी शामिल है। यह पिछले लेख की संपूर्ण-सिस्टम सीमा से भिन्न है। कृत्रिम उदाहरण अन्य पदों, जैसे वाष्पीकरण, को शून्य पर सेट करता है।
L/min और मिनट का उपयोग करने से अवशेष r L में प्राप्त होता है। हमारे मूल उदाहरण में, इनफ्लो 1.0 L/min है और आउटफ्लो 0.2 L/min है, पाँच मिनट के लिए। पूर्वानुमानित लाभ 4 L है, जबकि स्तर से अनुमानित आयतन केवल 100 L से 101 L तक बढ़ता है। अवशेष −3 L है।
यह अरिकॉर्डेड धाराओं, प्रवाह/स्तर पूर्वाग्रह, समय अंतर या छूटे हुए नुकसान की जाँच के लिए प्रेरित करता है। यह रिसाव का प्रमाण नहीं है।
from math import isfinite
def transport_minutes(line_l, flow_l_min):
if not all(isfinite(x) for x in (line_l, flow_l_min)):
raise ValueError("finite values required")
if line_l < 0 or flow_l_min <= 0:
raise ValueError("nonnegative volume and positive flow required")
return line_l / flow_l_min
def residual_l(v0, v1, intervals):
if not all(isfinite(v) and v >= 0 for v in (v0, v1)):
raise ValueError("invalid tank volume")
if not intervals:
raise ValueError("intervals required")
predicted = 0.0
for minutes, inflow, outflow in intervals:
if not all(isfinite(x) for x in (minutes, inflow, outflow)):
raise ValueError("finite interval values required")
if minutes <= 0 or min(inflow, outflow) < 0:
raise ValueError("invalid interval")
predicted += (inflow - outflow) * minutes
return (v1 - v0) - predicted
print(f"transport: {transport_minutes(0.50, 0.25):.1f} min")
print(f"residual: {residual_l(100, 101, [(5, 1.0, 0.2)]):.1f} L")
measurement_check.py के रूप में सहेजें और 2.0 min और -3.0 L प्राप्त करने के लिए python3 measurement_check.py चलाएँ। प्रत्येक अंतराल के भीतर प्रवाह स्थिर होते हैं, और अंतरालों को बिना किसी अंतराल या ओवरलैप के पूरी अवलोकन अवधि को कवर करने वाला माना जाता है। यह छोटा उदाहरण कोई टाइमस्टैंप स्वीकार नहीं करता, इसलिए यह स्वतः उस धारणा को सत्यापित नहीं कर सकता।
अंतिम आयतन को 104 L में बदलें और अवशेष शून्य हो जाता है। समान प्रवाह पर पाँच मिनट को दो और तीन मिनट में विभाजित करने से परिणाम अपरिवर्तित रहता है। मापित डेटा के लिए, अनुपलब्ध प्रवाह को शून्य मानने के बजाय एक अपूर्ण समाकलन को अमान्य करें।
मान लीजिए कि प्रत्येक अंतबिंदु आयतन में 0.5 L की त्रुटि सीमा है, प्रत्येक प्रवाह में 0.1 L/min की त्रुटि सीमा है, और अवधि सटीक है। पाँच मिनट में अवशिष्ट त्रुटि में सबसे खराब स्थिति का योगदान 0.5+0.5+5(0.1+0.1)=2.0 L है। केवल ये धारणाएँ 3 L की विसंगति की व्याख्या नहीं कर सकतीं। यह एक उदाहरणात्मक सीमा है, कोई उत्पाद सटीकता या सांख्यिकीय विश्वास अंतराल नहीं। किसी खराबी का निदान करने से पहले सीमाओं और छूटे हुए पदों को सत्यापित करें।
परिसंचरण को वेंटिलेशन से अलग करें
परिसंचरण इनडोर वायु को गतिमान और मिश्रित करता है; वेंटिलेशन बाहरी वायु के साथ विनिमय करता है। NC State की ग्रीनहाउस गाइड इन्हें अलग-अलग मानती है। परिसंचरण पंखे के रेटेड प्रवाह को बाहरी विनिमय के रूप में CO₂ संतुलन में न डालें।
कैनोपी वायु-गति सर्वेक्षणों के लिए, प्रोब अभिविन्यास, स्थान, औसत अवधि, प्रकाश व्यवस्था और पंखे की स्थिति दर्ज करें। शेल्फ के आगे का प्रवाह उसके पीछे के प्रवाह को स्थापित नहीं करता। स्थानिक अंतरों और उतार-चढ़ाव को औसत के साथ-साथ बनाए रखें, और जब फसल की वृद्धि प्रवाह मार्गों को बदल दे तो सर्वेक्षण दोहराएँ। एक अकेली वायु-गति सीधे वाष्पोत्सर्जन या रोग का पूर्वानुमान नहीं लगाती।
मापन श्रृंखला को कमीशन करें
- अवलोकन उद्देश्य और सीमा को परिभाषित करें; स्थान ID, इकाइयों और समय को संरेखित करें।
- मानकों या संदर्भ उपकरणों के विरुद्ध तुलना करें और समायोजन-पूर्व/बाद के परिणामों को बनाए रखें।
- स्थानिक सर्वेक्षणों से अलग, सह-स्थित मापों के माध्यम से उपकरण अंतरों की जाँच करें।
- परिवहन, प्रतिक्रिया और संचार विलंबों में अंतर करते हुए, परिचालन लॉग की अवलोकनों से तुलना करें।
- असंगतियाँ खोजने के लिए जल संतुलन और कई मापों का उपयोग करें, फिर प्रतिस्पर्धी कारणों की जाँच करें।
यह बाद के नियंत्रण और अनुमान के लिए अवलोकन स्थापित करता है। पौधे-इमेज अनुमान को भी उसी अनुशासन की आवश्यकता है: स्पष्ट परिवर्तनों को वृद्धि के रूप में व्याख्या करने से पहले इमेज समय, प्रकाश व्यवस्था और दृष्टिकोण को बनाए रखें।
CEA पौधा इमेज — प्रक्षेपित क्षेत्र मापें, पत्ती क्षेत्र में अंतर करें
क्या फोटोग्राफ में अधिक हरियाली का अर्थ अधिक पत्ती है?
पत्ती अभिविन्यास, ओवरलैप, प्रकाश व्यवस्था या कैमरा स्थिति बदलने पर वही पौधा एक भिन्न दृश्यमान क्षेत्र घेर सकता है। हमारा पहला अनुमान कार्य इसलिए इमेज में चयनित क्षेत्र के प्रक्षेपित क्षेत्र तक सीमित है। यह सीधे पत्ती सतह क्षेत्र, द्रव्यमान, उपज या तनाव का अनुमान नहीं लगाता।
पिछली सेंसिंग गाइड ने स्थानिक, उपकरण और समय अंतरों को अलग किया। इमेज को भी अधिग्रहण और प्रसंस्करण रिकॉर्ड की आवश्यकता होती है। यहाँ, ओवरलैपिंग एलिप्स कृत्रिम इनपुट बनाते हैं; कोई मापित पौधा फोटोग्राफ या प्रशिक्षित मॉडल नहीं हैं। नियंत्रित उदाहरण वास्तविक पौधों पर मूल्यांकन डिज़ाइन करने से पहले विफलता के कारणों को उजागर करते हैं।
पहले मात्रा को परिभाषित करें
एक बाइनरी मास्क M(u,v) के लिए जिसमें लक्ष्य पिक्सेल एक के बराबर हैं, पिक्सेल गणना N=\sum_{u,v}M(u,v) है। दिए गए मान्य आइसोट्रोपिक स्केल s [mm/pixel] के लिए, संदर्भ-तल समतुल्य क्षेत्र है:
हमारे कृत्रिम बेसलाइन में 14,738 पिक्सेल हैं। 0.5 mm/pixel पर, यह 3,684.50 mm² बन जाता है। स्केल उदाहरण के लिए प्रदान किया गया है, स्वतः मापा नहीं गया।
| मात्रा | यह पृष्ठ क्या मापता है | यह क्या नहीं है |
|---|---|---|
| मास्क पिक्सेल गणना | चयनित पिक्सेल की संख्या | एक कंटूर द्वारा घिरा ज्यामितीय क्षेत्र |
| संदर्भ-तल प्रक्षेपित क्षेत्र | पिक्सेल गणना गुणा वर्गित स्केल | घुमावदार पत्तियों का वास्तविक सतह क्षेत्र |
| दृश्यमान यूनियन | ऊपर से दिखाई देने वाला लक्ष्य क्षेत्र | प्रत्येक ओवरलैपिंग पत्ती के क्षेत्र का योग |
| हरा क्षेत्र | रंग द्वारा चयनित उम्मीदवार | पत्तियों की गारंटीशुदा सिमेंटिक पहचान |
PlantCV का आकार विश्लेषण इसी तरह लेबल किए गए क्षेत्रों से गुण गणना करता है और पिक्सेल आयामों के माध्यम से रूपांतरण का समर्थन करता है। क्षेत्र निष्कर्षण को इकाई रूपांतरण से अलग रखें। हमारा कोड सीधे पिक्सेल गिनता है और PlantCV को कॉल नहीं करता।
अधिग्रहण और स्केल को सुसंगत रखें
कैमरा स्थिति और अभिविन्यास, फोकल लंबाई, इमेज आयाम, एक्सपोज़र, व्हाइट बैलेंस, प्रकाश व्यवस्था, पौधा ID और टाइमस्टैंप दर्ज करें। यदि एक्सपोज़र या व्हाइट बैलेंस स्वचालित है, तो उस स्थिति को दर्ज करें। बदलती इमेज स्थितियों पर लागू एक स्थिर सीमा रंग परिवर्तनों को स्पष्ट क्षेत्र परिवर्तनों में बदल सकती है।
200 पिक्सेल में फैली एक ज्ञात 100 mm लंबाई उस स्थान पर 0.5 mm/pixel देती है। संदर्भ को मापन तल में रखें और कैमरे को यथासंभव लंबवत संरेखित करें। यदि विकृति या परिप्रेक्ष्य मायने रखता है, तो कैमरा कैलिब्रेशन और उपयुक्त प्लानर सुधार का उपयोग करें। भिन्न क्षैतिज और ऊर्ध्वाधर स्केल के लिए Ns_xs_y की आवश्यकता होती है।
फ़र्श पर एक संदर्भ को उसके ऊपर उगने वाली पत्तियों का स्केल साझा करने की आवश्यकता नहीं है। प्लानर सुधार एक त्रि-आयामी कैनोपी को समतलीय नहीं बनाता। जब ये धारणाएँ लागू नहीं होतीं, तो भौतिक पत्ती क्षेत्र का दावा करने के बजाय स्थिर अधिग्रहण के तहत पिक्सेल गणना या संदर्भ-तल समतुल्य क्षेत्र रिपोर्ट करें।
0.5 के बजाय 0.6 mm/pixel का उपयोग करने से समान मास्क का क्षेत्र 1.44 से गुणा हो जाता है: 44% की वृद्धि। सही निष्कर्षण गलत इकाई रूपांतरण के साथ सह-अस्तित्व में रह सकता है।
रंग उम्मीदवार चुनें
OpenCV ट्यूटोरियल HSV में रूपांतरण और inRange के साथ रंग-सीमा चयन प्रदर्शित करता है। हरा चुनना एक पत्ती को पहचानने के समान नहीं है।
इनपुट 320×240 पिक्सेल हैं। OpenCV के 8-बिट HSV निरूपण में, यह उदाहरण H 35–85, S 80–255 और V 100–255 चुनता है। H को सीधे 0–360 से कोण के रूप में दर्ज नहीं किया जाता। हमारे उत्पन्न ऐरे RGB हैं, इसलिए रूपांतरण COLOR_RGB2HSV का उपयोग करता है; imread द्वारा लौटाई गई BGR इमेज पर उस रूपांतरण का आँख मूंदकर पुनः उपयोग न करें।
मुख्य भाग तीन पंक्तियों का है। इमेज जनरेशन, स्थिति तुलना और सत्यापन पूर्ण डाउनलोड में हैं।
hsv = cv2.cvtColor(rgb, cv2.COLOR_RGB2HSV)
mask = cv2.inRange(hsv, (35, 80, min_v), (85, 255, 255)) != 0
pixels = int(np.count_nonzero(mask))
कोई मॉर्फोलॉजिकल फिलिंग या छोटे-घटक निष्कासन लागू नहीं किया गया है। यदि ऐसा प्रसंस्करण जोड़ते हैं, तो जाँच करें कि क्या यह संदर्भ मास्क के विरुद्ध संकरी पत्तियों या पत्तियों के बीच अंतराल को बदलता है।
समान ज्यामिति के साथ विफलताओं की तुलना करें
उत्पन्न संदर्भ तीन एलिप्स का इन-फ्रेम दृश्यमान यूनियन है। ओवरलैप को एक बार गिना जाता है, और फ्रेम के बाहर के हिस्सों को बाहर रखा जाता है।
लाल लक्ष्य के रूप में चयनित पृष्ठभूमि को चिह्नित करता है; नीला छूटे हुए लक्ष्य पिक्सेल को चिह्नित करता है। हरे क्षेत्र अपने इनपुट रंगों को बनाए रखते हैं। ये कृत्रिम आकृतियाँ हैं, पौधों के फोटोग्राफ नहीं।
| स्थिति | चयनित पिक्सेल | तल-समतुल्य क्षेत्र [mm²] | IoU | व्याख्या |
|---|---|---|---|---|
| clean | 14,738 | 3,684.50 | 1.000 | कृत्रिम संदर्भ से मेल खाता है |
| green_tag | 15,538 | 3,884.50 | 0.949 | 800 पृष्ठभूमि पिक्सेल जोड़ता है |
| green_tag_roi | 14,738 | 3,684.50 | 1.000 | इस लेआउट में टैग को बाहर रखता है |
| dim | 7,428 | 1,857.00 | 0.504 | आकार बदले बिना लगभग आधा छूट जाता है |
| dim_lower_v | 14,738 | 3,684.50 | 1.000 | V न्यूनतम 40 इस अँधेरे क्षेत्र को रिकवर करता है |
| wrong_scale | 14,738 | 5,305.68 | 1.000 | सही मास्क, 44% बड़ा रूपांतरण |
| clipped | 13,016 | 3,254.00 | 1.000 | इन-फ्रेम संदर्भ से मेल खाता है, लेकिन पूरी वस्तु से नहीं |
स्थिर green_tag_roi (50,20) पर शुरू होता है, जिसकी चौड़ाई 230 और ऊँचाई 190 पिक्सेल है। इसे इस कृत्रिम टैग से बचने के लिए चुना गया था, किसी फसल-स्वतंत्र रुचि क्षेत्र के रूप में नहीं। ROI से परे वृद्धि वास्तविक लक्ष्य पिक्सेल को बाहर कर देगी।
न्यूनतम V को कम करना कोई सार्वभौमिक समाधान नहीं है। यह यहाँ डिम लक्ष्य को रिकवर करता है, लेकिन वास्तविक दृश्यों में गहरे हरे पृष्ठभूमि को स्वीकार कर सकता है। प्रत्येक इमेज के उत्तरों के विरुद्ध सीमाओं को ट्यून न करें और उन्हीं इमेज पर केवल सटीकता रिपोर्ट न करें।
क्षेत्र और स्थान का अलग-अलग मूल्यांकन करें
पूर्वानुमान P और संदर्भ G के लिए, इंटरसेक्शन ओवर यूनियन स्थानिक ओवरलैप को मापता है:
अतिरिक्त और छूटे हुए पिक्सेल की समान संख्या गलत स्थानों के बावजूद शून्य क्षेत्र त्रुटि उत्पन्न करती है। एक संदर्भ [0,1,1,0] और पूर्वानुमान [1,1,0,0] प्रत्येक में दो चयनित पिक्सेल हैं, लेकिन उनका IoU 1/3 है।
आउटपुट में प्रिसिजन भी शामिल है, चयनित पिक्सेल का सही अंश, और रीकॉल, संदर्भ पिक्सेल का रिकवर किया गया अंश। mask_area_error_percent संदर्भ के विरुद्ध पिक्सेल-गणना त्रुटि है, स्केल अंशांकन से भौतिक त्रुटि नहीं। यह wrong_scale के लिए शून्य रहता है। अपरिभाषित अनुपात, जिसमें दो खाली मास्क का IoU शामिल है, एक मान्य परफेक्ट स्कोर के बजाय JSON null हैं।
touches_frame एक इमेज किनारे को छूने वाले चयनित पिक्सेल को फ़्लैग करता है। यह clipped के लिए true है। यह हर अपूर्ण वस्तु का पता नहीं लगाता: सेगमेंटेशन किनारे के पिक्सेल को चूक सकता है, या एक आंतरिक ROI लक्ष्य के हिस्से को हटा सकता है। फ़्लैग false होने पर भी इमेज और ROI का निरीक्षण करें।
डाउनलोड करें और पुनरुत्पादित करें
पूर्ण ZIP, Python स्रोत, अपेक्षित परिणाम, README और मैनिफ़ेस्ट डाउनलोड करें। ZIP में इनपुट, संदर्भ, निकाले गए मास्क और त्रुटि ओवरले शामिल हैं, ये सभी उसी स्रोत से पुनः उत्पन्न किए जा सकते हैं।
परीक्षित वातावरण: Linux x86_64, Python 3.12.3, NumPy 1.26.4 और OpenCV 4.6.0। निर्भरता संस्करण पुनरुत्पादन के लिए पिन किए गए हैं, अन्य ऑपरेटिंग सिस्टम या Python संस्करणों का प्रमाणन नहीं।
ZIP निकालने के बाद, चलाएँ:
python3 -m venv .venv
.venv/bin/python -m pip install -r requirements.txt
.venv/bin/python experiment.py --self-test
.venv/bin/python experiment.py --verify expected.json --out reproduced
Windows पर, .venv/bin/python को .venv\Scripts\python.exe से बदलें। आउटपुट डायरेक्टरी मौजूद नहीं होनी चाहिए; मौजूदा आउटपुट को ओवरराइट नहीं किया जाता। परिणाम JSON और प्रत्येक स्थिति की PNG फ़ाइलें सहेजी जाती हैं। बेसलाइन आउटपुट samples/ के अंतर्गत शामिल हैं।
न्यूनतम V को इसके साथ बदलें:
.venv/bin/python experiment.py --min-v 40 --out lower-v
केवल dim_lower_v हमेशा 40 का उपयोग करता है; अन्य स्थितियाँ आपूर्ति किए गए मान का उपयोग करती हैं। बदले गए परिणाम जानबूझकर बेसलाइन expected.json के साथ तुलना में विफल होते हैं। प्रयोग बदलने के बाद बेसलाइन सत्यापन पास होने की अपेक्षा न करें।
सात परीक्षण एक ज्ञात आयत, समान-क्षेत्र/भिन्न-स्थान मास्क, खाली मास्क, सात मामलों के बीच संबंध, अमान्य इनपुट, संशोधित अपेक्षित परिणाम और ROI चूक को कवर करते हैं। मूल डाउनलोड में कोई वास्तविक-फोटो अंतर्ग्रहण सुविधा नहीं है; ब्राउज़र एडाप्टर ऊपर उपलब्ध है।
जैविक दावे करने से पहले मापित पौधों पर मूल्यांकन करें
निम्नलिखित एक प्रस्तावित अगले-चरण मूल्यांकन है, इस कृत्रिम उदाहरण द्वारा पूरा किया गया कार्य नहीं।
- पौधा ID, तारीखें, रोशनी, कैमरा ज्यामिति और मूल इमेज को बनाए रखें।
- लक्ष्य सदस्यता को परिभाषित करें, जिसमें यह शामिल है कि क्या तने या वृद्ध पत्तियाँ गिनी जाती हैं, और मानव संदर्भ मास्क बनाएं।
- सीमा-विकास इमेज को मूल्यांकन इमेज से अलग करें। केवल आसन्न वीडियो फ़्रेम को अलग करने के बजाय पौधे या अधिग्रहण तारीख के अनुसार विभाजन पर विचार करें।
- प्रकाश व्यवस्था, पृष्ठभूमि, ओवरलैप और क्लिपिंग के अनुसार त्रुटियाँ रिपोर्ट करें, क्षेत्र मीट्रिक, IoU और त्रुटि ओवरले को बनाए रखते हुए।
- वास्तविक पत्ती क्षेत्र या शुष्क द्रव्यमान का अनुमान लगाने के लिए, संगत स्वतंत्र संदर्भ माप एकत्र करें और उस मैपिंग को एक अलग मॉडल के रूप में सत्यापित करें।
समय-श्रृंखला प्रक्षेपित-क्षेत्र परिवर्तन मुद्रा या ओवरलैप के परिणामस्वरूप हो सकते हैं। एक इमेज मीट्रिक उत्पन्न करना वृद्धि दर या तनाव स्थापित नहीं करता। पहले अवलोकन को पुनरुत्पादनीय बनाएं, फिर यह परखने के लिए संदर्भ डेटा का उपयोग करें कि यह क्या दर्शाता है।
CEA रूट ज़ोन — EC, pH, ऑक्सीजन और जल संतुलन को अलग करना
जब जल स्तर गिरता है, तो क्या बदला जाना चाहिए?
एक पोषक विलयन 100 L से 90 L तक गिरता है। अकेले वह अवलोकन वाष्पीकरण, पौधे के जल अवशोषण, रिसाव या जल निकासी में अंतर नहीं कर सकता। यह पोषक अवशोषण भी स्थापित नहीं करता। आयतन को बहाल करना और पोषक संरचना को बहाल करना अलग-अलग निर्णय हैं।
प्रकाश पर्यावरण गाइड का अनुसरण करते हुए, यह लेख रूट पर्यावरण की जाँच करता है। यह एक रीसर्कुलेटिंग विलयन प्रणाली प्रस्तुत करता है; यह कोई फसल नुस्खा या स्वचालित डोज़िंग कार्यान्वयन नहीं है। सभी संख्यात्मक उदाहरण कृत्रिम हैं।
रूट ज़ोन वह क्षेत्र है जहाँ जड़ें अपने परिवेश के साथ जल, पोषक तत्व और गैसों का आदान-प्रदान करती हैं। एक रिज़र्वॉयर रीडिंग उपयोगी होती है, लेकिन इसे जड़ सतह, एक चैनल के अंत या एक सब्सट्रेट के आंतरिक भाग का वर्णन करने की आवश्यकता नहीं है।
पाँच मापों को अलग रखें
| माप | अर्थ और इकाइयाँ | अकेले यह क्या स्थापित नहीं करता |
|---|---|---|
| EC | विद्युत चालकता, जैसे mS/cm | व्यक्तिगत नाइट्रेट, पोटेशियम या कैल्शियम सांद्रता |
| pH | हाइड्रोजन-आयन गतिविधि से संबंधित लघुगणकीय मात्रा | लक्ष्य pH तक पहुँचने के लिए आवश्यक एसिड या बेस |
| विघटित ऑक्सीजन (DO) | mg/L या प्रतिशत संतृप्ति | जड़ सतह तक ऑक्सीजन वितरण दर |
| जल तापमान | मापन स्थान पर °C | वायु तापमान या संपूर्ण जड़ तापमान वितरण |
| आयतन और प्रवाह | उदाहरण के लिए L और L/min | व्यक्तिगत पोषक तत्वों का अवशोषण |
यह एक मापन-योजना तालिका है। स्वीकार्य स्थितियाँ फसल, वृद्धि चरण और उत्पादन प्रणाली पर निर्भर करती हैं।
EC संरचना का पुनर्निर्माण नहीं कर सकता
1 mS/cm = 1,000 µS/cm = 1 dS/m. इकाइयाँ दर्ज करें। चालकता तरल तापमान के साथ भी बदलती है: मापित तापमान, क्षतिपूर्ति सेटिंग्स और संदर्भ तापमान को बनाए रखें, और क्षतिपूर्ति की गई रीडिंग को अक्षतिपूर्ति वाली रीडिंग से अलग करें।
EC व्यक्तिगत लवण सांद्रता को प्रकट नहीं करता, जैसा कि ओक्लाहोमा स्टेट यूनिवर्सिटी की जल-परीक्षण गाइड में समझाया गया है। एक अकेली रीडिंग एक पोषक तत्व की कमी को दूसरे आयन के संचय से अलग नहीं कर सकती।
एक EC-व्युत्पन्न "ppm" डिस्प्ले भी व्यक्तिगत पोषक तत्वों का माप नहीं है। इसके रूपांतरण कारक को दर्ज करें और इसे एक प्रयोगशाला सांद्रता परिणाम से अलग करें। संरचना की आवश्यकता होने पर स्रोत-जल और विलयन विश्लेषण का उपयोग करें।
OSU की पोषक-प्रबंधन गाइड स्रोत-जल परीक्षण, लवण सांद्रता, pH, क्षारीयता और पोषक अनुपात को प्रासंगिक बताती है। हमारा परिचालन अनुमान है कि EC सेटपॉइंट पर वापसी को इस प्रमाण के रूप में न मानें कि मूल फॉर्मूलेशन बहाल हो गया है।
pH और क्षारीयता को अलग-अलग दर्ज करें
pH वर्तमान अम्लता या क्षारकता का वर्णन करता है। क्योंकि यह लघुगणकीय है, दो pH रीडिंग का आयतन-भारित औसत सामान्यतः मिश्रित विलयन का pH नहीं देता। USGS: pH और जल
क्षारीयता एसिड-निष्प्रभावीकरण क्षमता को मापती है। समान प्रारंभिक pH वाले दो जल समान एसिड मिश्रण पर भिन्न प्रतिक्रिया दे सकते हैं जब उनकी क्षारीयता भिन्न होती है। USGS: क्षारीयता और जल
एक नियम जो 0.5-यूनिट pH त्रुटि के लिए हमेशा समान खुराक जोड़ता है, इन मात्राओं को भ्रमित करता है। एक हस्तक्षेप का मूल्यांकन करने के लिए, स्रोत जल, रिज़र्वॉयर आयतन, पदार्थ और मिलाई गई मात्रा, और मिश्रण के बाद मापन के समय को दर्ज करें। नीचे दिया गया जल संतुलन आवश्यक खुराक की गणना नहीं कर सकता।
ऑक्सीजन को एक वितरण मार्ग की आवश्यकता है
संतुलन ऑक्सीजन घुलनशीलता जल तापमान, वायुमंडलीय दाब और लवणता पर निर्भर करती है। USGS DOTABLES घुलनशीलता की गणना के लिए इन स्थितियों का उपयोग करता है। समान दाब और लवणता पर, गर्म जल आमतौर पर संतुलन पर कम विघटित ऑक्सीजन रखता है। mg/L और प्रतिशत संतृप्ति की तुलना करते समय रूपांतरण स्थितियों की जाँच करें।
जड़ों को श्वसन के लिए ऑक्सीजन की आवश्यकता होती है। कॉर्नेल की हाइड्रोपोनिक पत्तेदार साग की गाइड जड़ ऑक्सीजन आपूर्ति और जल तापमान पर चर्चा करती है। एक स्पष्ट रूप से पर्याप्त रिज़र्वॉयर DO रीडिंग एक घने जड़ द्रव्यमान के अंदर समान स्थितियाँ स्थापित नहीं करती। परिसंचरण, वातन और सैंपलिंग स्थान दर्ज करें, जिसमें ग्रोइंग चैनल के इनलेट और आउटलेट के बीच के अंतर शामिल हैं।
संपूर्ण सिस्टम को घेरने वाली एक सीमा के लिए, आंतरिक परिसंचरण कोई बाहरी जल इनपुट नहीं है। आरेख पूर्ण मिश्रण या समान ऑक्सीजन का संकेत नहीं देता।
एक सब्सट्रेट के साथ, जल प्रतिधारण और वायु मार्ग भी मायने रखते हैं। अकेले रिज़र्वॉयर DO सब्सट्रेट वातन स्थापित नहीं करता। नीचे दी गई एकल-तरल-कम्पार्टमेंट गणना को सीधे सब्सट्रेट के आंतरिक भाग पर लागू न करें।
जल और विलेय खातों को अलग रखें
संपूर्ण रीसर्कुलेटिंग सिस्टम को घेरने वाली एक सीमा चुनें, जिसमें रिज़र्वॉयर, पाइप और ग्रोइंग चैनल शामिल हैं। एक अंतराल में, मान लें कि बाहरी मिश्रण V_{in} है, तरल निर्वहन V_{out} है, और वाष्पीकरण प्लस पौधों को स्थानांतरित पानी V_w है, सभी L में।
आंतरिक पंप परिसंचरण को मेकअप जल के रूप में न जोड़ें। एक केवल-रिज़र्वॉयर सीमा इसके बजाय इसके बाहर जाने वाले और वापस आने वाले प्रवाह को स्पष्ट रूप से गिनेगी।
एक ट्रैक किए गए विलेय के लिए, द्रव्यमान M [mg] है और सांद्रता C=M/V [mg/L] है:
U पौधों को स्थानांतरण है; R तरल चरण से शुद्ध निष्कासन है, जैसे अवक्षेपण। तरल से निष्कासन का अर्थ पदार्थ का विनाश नहीं है। तरल निर्वहन वाष्पीकरण के विपरीत जल और विलेय दोनों को ले जाता है। निरंतर निर्वहन के लिए, बदलती सांद्रता का हिसाब रखने हेतु M_{out}=\int C_{out}(t)Q_{out}(t)dt का उपयोग करें।
निम्नलिखित मूल अंकगणितीय उदाहरण इस बहीखाता की जाँच करता है। यह कोई मापित पौधा अवशोषण दर, उर्वरक नुस्खा या EC पूर्वानुमान नहीं है। एक घटक के 10,000 mg वाले 100 L से शुरू करें: 100 mg/L। कोई मिश्रण या अवक्षेपण न मानें।
| कृत्रिम स्थिति | अंतिम आयतन | अंतिम विलेय द्रव्यमान | अंतिम सांद्रता |
|---|---|---|---|
| A: 10 L पानी की हानि; विलेय बना रहता है | 90 L | 10,000 mg | 111.11 mg/L |
| B: पौधों को 10 L पानी और 2,000 mg स्थानांतरण | 90 L | 8,000 mg | 88.89 mg/L |
| C: 10 L समान विलयन का निर्वहन | 90 L | 9,000 mg | 100.00 mg/L |
समान आयतन की कमी बढ़ती, घटती या अपरिवर्तित सांद्रता के साथ हो सकती है। ट्रैक किए गए विलेय से रहित 10 L पानी मिलाने से A 100 mg/L पर बहाल हो जाता है, लेकिन B केवल 80 mg/L तक पहुँचता है। आयतन बहाल करना विलेय द्रव्यमान को बहाल नहीं करता।
Python में तुलना को पुनरुत्पादित करें
निम्नलिखित को root_zone.py के रूप में सहेजें और python3 root_zone.py चलाएँ। केवल Python की मानक लाइब्रेरी की आवश्यकता है।
from math import isfinite
def concentration(volume_l, mass_mg):
if not (isfinite(volume_l) and isfinite(mass_mg)):
raise ValueError("finite values required")
if volume_l <= 0 or mass_mg < 0:
raise ValueError("positive volume and nonnegative mass required")
return mass_mg / volume_l
initial_v, initial_m = 100.0, 10000.0
initial_c = concentration(initial_v, initial_m)
cases = {
"A": (initial_v - 10, initial_m),
"B": (initial_v - 10, initial_m - 2000),
"C": (initial_v - 10, initial_m - 10 * initial_c),
}
for name, (volume, mass) in cases.items():
print(f"{name}: {concentration(volume, mass):.2f} mg/L")
print(f"B + water: {concentration(cases['B'][0] + 10, cases['B'][1]):.2f} mg/L")
आउटपुट 111.11, 88.89, 100.00 और 80.00 mg/L हैं। B में 2,000 mg निष्कासन को 1,000 mg में बदलें: आयतन हानि के बाद, सांद्रता 100 mg/L हो जाती है। सांद्रता अपरिवर्तित रहने पर भी अवशोषण हो सकता है। शून्य आयतन और ऋणात्मक शेष द्रव्यमान त्रुटियाँ उत्पन्न करते हैं।
यह कोड EC, pH या DO की गणना नहीं करता। एक घटक के लिए सही बहीखाता बहु-घटक रासायनिक संतुलन या फसल प्रतिक्रिया को मान्य नहीं करता।
आगे क्या अवलोकन करना है यह तय करें
ये प्रस्तावित अवलोकन संयोजन हैं, कोई स्वचालित डोज़िंग नियम नहीं।
| अवलोकन | अगली जाँच |
|---|---|
| आयतन गिरने के साथ EC बढ़ता है | मेकअप और निर्वहन इतिहास, तरल तापमान और क्षतिपूर्ति, जल और विलयन संरचना |
| पौधे की स्थिति बदलने पर EC स्थिर रहता है | व्यक्तिगत घटक, रूट-ज़ोन DO और तापमान, प्रवाह, प्रकाश और वायु इतिहास |
| समायोजन के बाद pH फिर बदलता है | मिश्रण और मापन समय, स्रोत-जल क्षारीयता, मिश्रण इतिहास |
| रिज़र्वॉयर और आउटलेट DO भिन्न हैं | समकालिक रीडिंग, सेंसर स्थिति, परिसंचरण, वातन और जड़ वितरण |
समय, स्थान, इकाइयों और अंशांकन को जल आयतन, मेकअप, निर्वहन और मिश्रण के साथ जोड़ें। विस्तृत सेंसर प्लेसमेंट, व्यक्तिगत पोषक प्रबंधन और डोज़िंग नियंत्रण बाद के चरण हैं। यहाँ की नींव एक अवलोकित सांद्रता को सिस्टम में शेष द्रव्यमान से अलग करना है।

टिप्पणियाँ
पहले लॉग इन करें।
अभी कोई डेटा नहीं है।