From 21fa6726f4bd496a5bee918de1406e6634bf12a4 Mon Sep 17 00:00:00 2001 From: Kq Date: Wed, 12 Aug 2026 02:10:09 +0200 Subject: [PATCH] skibidi --- Program.cs | 224 ++++-------------- bin/Debug/net10.0/CameraPreview.dll | Bin 10752 -> 8704 bytes bin/Debug/net10.0/CameraPreview.pdb | Bin 14116 -> 12720 bytes .../net10.0/CameraPreview.AssemblyInfo.cs | 2 +- .../CameraPreview.AssemblyInfoInputs.cache | 2 +- obj/Debug/net10.0/CameraPreview.dll | Bin 10752 -> 8704 bytes obj/Debug/net10.0/CameraPreview.pdb | Bin 14116 -> 12720 bytes obj/Debug/net10.0/ref/CameraPreview.dll | Bin 5632 -> 5632 bytes obj/Debug/net10.0/refint/CameraPreview.dll | Bin 5632 -> 5632 bytes 9 files changed, 51 insertions(+), 177 deletions(-) diff --git a/Program.cs b/Program.cs index a1ccc88..55e3858 100644 --- a/Program.cs +++ b/Program.cs @@ -4,8 +4,8 @@ using ZXing.QrCode; using OpenCvSharp.Extensions; using ZXing.Windows.Compatibility; using ZXing.Common; -using System.Drawing; using System.Runtime.InteropServices; +using System.Drawing; namespace BarcodeReaderExample @@ -24,7 +24,6 @@ namespace BarcodeReaderExample camera.Set(VideoCaptureProperties.Fps, 5); - // Mat frame = new Mat(); Mat hey = new Mat("photo.png"); @@ -58,19 +57,13 @@ namespace BarcodeReaderExample float[] pos1 = new float[2] {points[0].X, points[0].Y}; /// lewy dolny róg float[] pos2 = new float[2] {points[2].X, points[2].Y}; ///prawy górny róg float[] pos3 = new float[2] { points[1].X, points[1].Y }; ///lewy górny róg - float[] pos4 = new float[2] { points[3].X, points[3].Y }; ///prawy dolny róg // Cv2.Circle(frame, (int)pos1[0], (int)pos1[1], 5, Scalar.Red, 2); // Cv2.Circle(frame, (int)pos2[0], (int)pos2[1], 5, Scalar.Green, 2); // Cv2.Circle(frame, (int)pos3[0], (int)pos3[1], 5, Scalar.Blue, 2); - Cv2.PutText(frame, result.Text, new OpenCvSharp.Point((int)pos1[0], (int)pos1[1] - 10), HersheyFonts.HersheySimplex, 1, Scalar.Red, 2); - - Executeit(pos1, pos2, pos3, pos4); - // DrawLine(new PointF(LeftBottomX, LeftBottomY), new PointF(LeftTopX, LeftTopY)); - // DrawLine(new PointF(RightTopX, RightTopY), new PointF(LeftTopX, LeftTopY)); - // DrawLine(new PointF(LeftBottomX, LeftBottomY), new PointF(RightBottomX, RightBottomY)); - // DrawLine(new PointF(RightTopX, RightTopY), new PointF(RightBottomX, RightBottomY)); + + Calculate(pos1, pos2, pos3, new float[2] { points[3].X, points[3].Y }); // Cv2.Circle(frame, (int)(RightBottomX), (int)(RightBottomY), 5, Scalar.Green, 2); @@ -86,7 +79,7 @@ namespace BarcodeReaderExample Cv2.ImShow("Camera preview", frame); - Thread.Sleep(1000 / 24); + Thread.Sleep(1000 / 24); // Console.WriteLine("tick"); int key = Cv2.WaitKey(1); if (key == 27 || key == 'q') @@ -96,7 +89,50 @@ namespace BarcodeReaderExample Cv2.DestroyAllWindows(); } - static Mat frame = new Mat(); + static void Calculate(float[] pos1, float[] pos2, float[] pos3, float[] pos4) + { + // Your 4 detected points (change the names if needed) +PointF p1 = new PointF(pos1[0], pos1[1]); +PointF p2 = new PointF(pos2[0], pos2[1]); +PointF p3 = new PointF(pos3[0], pos3[1]); +PointF p4 = new PointF(pos4[0], pos4[1]); + +// 1. Find the center of the QR +float centerX = (p1.X + p2.X + p3.X + p4.X) / 4f; +float centerY = (p1.Y + p2.Y + p3.Y + p4.Y) / 4f; +PointF center = new PointF(centerX, centerY); + +// 2. How much bigger you want the box (1.0 = exact size, 1.15 = 15% bigger) +float scale = 1.35f; // ← change this value + +// 3. Move every corner away from the center +PointF Expand(PointF p) +{ + float dx = p.X - center.X; + float dy = p.Y - center.Y; + return new PointF(center.X + dx * scale, center.Y + dy * scale); +} + +float scaleLB = 1.75f; // ← change this value +PointF ExpandLB(PointF p) +{ + float dx = p.X - center.X; + float dy = p.Y - center.Y; + return new PointF(center.X + dx * scaleLB, center.Y + dy * scaleLB); +} + +PointF topLeft = Expand(p3); // change order if needed +PointF topRight = Expand(p2); +PointF bottomRight = ExpandLB(p4); +PointF bottomLeft = Expand(p1); + +// 4. Now draw the 4 lines +// Example with System.Drawing or Unity or whatever you use: +DrawLine(topLeft, topRight); +DrawLine(topRight, bottomRight); +DrawLine(bottomRight, bottomLeft); +DrawLine(bottomLeft, topLeft); + } static void DrawLine(PointF p1, PointF p2) { Cv2.Line(frame, (int)p1.X, (int)p1.Y, (int)p2.X, (int)p2.Y, Scalar.Red, 2); @@ -106,27 +142,7 @@ namespace BarcodeReaderExample { Cv2.Line(frame, (int)x1, (int)y1, (int)x2, (int)y2, Scalar.Red, 2); } - - static void Executeit(float[] pos1, float[] pos2, float[] pos3, float[] pos4) - { - // Your detected points - QrOverlay.Pt[] raw = { - new QrOverlay.Pt(pos1[0], pos1[1]), - new QrOverlay.Pt(pos2[0], pos2[1]), - new QrOverlay.Pt(pos3[0], pos3[1]), - new QrOverlay.Pt(pos4[0], pos4[1]) -}; - - // Get the expanded corners (margin = 0.10 → 10% bigger, try 0.08–0.18) - QrOverlay.Pt[] box = QrOverlay.GetExpandedCorners(raw, 0.12f); - - // Draw - DrawLine(box[0].X, box[0].Y, box[1].X, box[1].Y); - DrawLine(box[1].X, box[1].Y, box[2].X, box[2].Y); - DrawLine(box[2].X, box[2].Y, box[3].X, box[3].Y); - DrawLine(box[3].X, box[3].Y, box[0].X, box[0].Y); - } - + static Mat frame = new Mat(); static Result GetResult(Mat frame) { @@ -135,25 +151,6 @@ namespace BarcodeReaderExample Result result = reader.decode(MatToBinaryBitmap(frame)); return result; } - // Sorts any 4 points into: Top-Left, Top-Right, Bottom-Right, Bottom-Left - static PointF[] SortQrCorners(PointF[] points) - { - // 1. Find center - float cx = (points[0].X + points[1].X + points[2].X + points[3].X) / 4f; - float cy = (points[0].Y + points[1].Y + points[2].Y + points[3].Y) / 4f; - - PointF tl = new PointF(), tr = new PointF(), br = new PointF(), bl = new PointF(); - - foreach (var p in points) - { - if (p.X < cx && p.Y < cy) tl = p; // top-left - else if (p.X > cx && p.Y < cy) tr = p; // top-right - else if (p.X > cx && p.Y > cy) br = p; // bottom-right - else bl = p; // bottom-left - } - - return new PointF[] { tl, tr, br, bl }; - } static BinaryBitmap MatToBinaryBitmap(Mat frame) { if (frame.Empty()) @@ -199,129 +196,6 @@ namespace BarcodeReaderExample ); } } - public static class QrOverlay -{ - public struct Pt - { - public float X, Y; - public Pt(float x, float y) { X = x; Y = y; } - } - - // Main function you call every frame - public static Pt[] GetExpandedCorners(Pt[] rawPoints, float margin = 0.12f) - { - // 1. Sort - var sorted = Sort(rawPoints); - Pt tl = sorted[0], tr = sorted[1], br = sorted[2], bl = sorted[3]; - - // 2. Fix weak bottom-right - br = new Pt(tr.X + bl.X - tl.X, tr.Y + bl.Y - tl.Y); - - // 3. Canonical square (0..1) - Pt[] canonical = { - new Pt(0, 0), - new Pt(1, 0), - new Pt(1, 1), - new Pt(0, 1) - }; - - // 4. Expanded canonical square - Pt[] expanded = { - new Pt(-margin, -margin), - new Pt(1 + margin, -margin), - new Pt(1 + margin, 1 + margin), - new Pt(-margin, 1 + margin) - }; - - // 5. Homography: canonical → image - float[] H = FindHomography(canonical, new[] { tl, tr, br, bl }); - - // 6. Transform the expanded points back to image - Pt[] result = new Pt[4]; - for (int i = 0; i < 4; i++) - result[i] = Transform(H, expanded[i]); - - return result; - } - - // ---------- helpers ---------- - static Pt[] Sort(Pt[] pts) - { - float cx = (pts[0].X + pts[1].X + pts[2].X + pts[3].X) * 0.25f; - float cy = (pts[0].Y + pts[1].Y + pts[2].Y + pts[3].Y) * 0.25f; - - Pt tl = default, tr = default, br = default, bl = default; - foreach (var p in pts) - { - if (p.X < cx && p.Y < cy) tl = p; - else if (p.X >= cx && p.Y < cy) tr = p; - else if (p.X >= cx && p.Y >= cy) br = p; - else bl = p; - } - return new[] { tl, tr, br, bl }; - } - - static Pt Transform(float[] H, Pt p) - { - float x = H[0] * p.X + H[1] * p.Y + H[2]; - float y = H[3] * p.X + H[4] * p.Y + H[5]; - float w = H[6] * p.X + H[7] * p.Y + H[8]; - return new Pt(x / w, y / w); - } - - // Simple but robust 4-point homography (DLT) - static float[] FindHomography(Pt[] src, Pt[] dst) - { - // Build the 8x9 matrix and solve with Gaussian elimination - float[,] A = new float[8, 9]; - - for (int i = 0; i < 4; i++) - { - float x = src[i].X, y = src[i].Y; - float u = dst[i].X, v = dst[i].Y; - - A[i * 2, 0] = x; A[i * 2, 1] = y; A[i * 2, 2] = 1; - A[i * 2, 6] = -u * x; A[i * 2, 7] = -u * y; A[i * 2, 8] = -u; - - A[i * 2 + 1, 3] = x; A[i * 2 + 1, 4] = y; A[i * 2 + 1, 5] = 1; - A[i * 2 + 1, 6] = -v * x; A[i * 2 + 1, 7] = -v * y; A[i * 2 + 1, 8] = -v; - } - - // Gaussian elimination to find null-space (last column) - // (simplified solver – works well for QR) - for (int i = 0; i < 8; i++) - { - // Pivot - int pivot = i; - for (int j = i + 1; j < 8; j++) - if (Math.Abs(A[j, i]) > Math.Abs(A[pivot, i])) pivot = j; - - for (int k = 0; k < 9; k++) - { - float tmp = A[i, k]; - A[i, k] = A[pivot, k]; - A[pivot, k] = tmp; - } - - float div = A[i, i]; - if (Math.Abs(div) < 1e-8f) continue; - for (int k = i; k < 9; k++) A[i, k] /= div; - - for (int j = 0; j < 8; j++) - { - if (j == i) continue; - float f = A[j, i]; - for (int k = i; k < 9; k++) - A[j, k] -= f * A[i, k]; - } - } - - float[] H = new float[9]; - for (int i = 0; i < 8; i++) H[i] = -A[i, 8]; - H[8] = 1f; - return H; - } -} } diff --git a/bin/Debug/net10.0/CameraPreview.dll b/bin/Debug/net10.0/CameraPreview.dll index 8f8f8cd40500e29dec7c620107889b0cc85ef3f5..50e4c76084c6ab42200330a4791a3c2528a1f26f 100644 GIT binary patch delta 3898 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 delta 6002 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 VA)E$~5po9m&4LQ=87CUB0|453mVf{N diff --git a/bin/Debug/net10.0/CameraPreview.pdb b/bin/Debug/net10.0/CameraPreview.pdb index 01b7e108c1ccc14e7162d8fa7b27ceec4bd6eb76..f1576a718d1f8e0d35a41211250dc4eeb4187687 100644 GIT binary patch delta 1410 zcmZ3Iw;_3gN__+a1A}rvN)iJD1H%;t1_lcz1_tFi1_mBx28J6Tx!{tb%)Insko*&7 z1_l<8SZFZA3uXp}1Q6Rj)YFB5fx&}?fgwYefkD|RCm&>3Qf-WD@r^&u`@(*Hh&}Kt z^2j>JW<~}Ews27<4o)rx21W)324e;WIR<71h@o5z3=I4X3=CEb3=9Gc3=FIc3=E7D zkLnA8B)AzE7?cHjq3ZvG?P6vS zgYrR+Vqrk=mFmGRL*h2-pZ21_lOh1{IKAuu+T*f?&;( zV9ko)z|{mB0SX{C1``Gb26l!Hut9Se7#KJiCVv%xig&&qp~eb{UjJpP|_c`I3}kW#F-UU@>#Txs``jVJaTyTFsUeuew33%@3> zWP7PlexFm*^vv_0#a7(Rt16crcF0k>Dk*Pz(Qkgt8L`bSe4971$7?X|m@H(V#mF|< z*1(nBosYqYL7r#w6ay_bO$H7IiI~Yp3?4AbO?Fh0tLF=@EG|jS)pIFIEYHkK*JWH) z$GEDMan%CGRjU|RZDU+@jB(X<##QeaSN&pK&A_;tmvOZU<7x-S)xM0Yb2J!b7#rs> zHeO_Gdc%~(*kZxhxt*ycnXzR(W6LMT)?migZA_hanVPv0m>3usV>uZaG+7FH88n#~ zU_?ELX~@Q)&S1#Ipw6Jn#2~;R!p6YMASS}V%b*~@z{Q}z#K6U%#Kgc2VaaeHiE%N= zfn*t(1mxry8GRYc85$3*lfxO$^wiH zot%se-b@^h77UCml@OsmPDTc2CJqG#My5(>W(EevhAChdbFhI5K3)bsCI%Le92=u7 zqpuiaI15P0?8ylEI3~P!zeq6*W6DHYbQRn*spqJ_Y3f delta 2785 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 diff --git a/obj/Debug/net10.0/CameraPreview.AssemblyInfo.cs b/obj/Debug/net10.0/CameraPreview.AssemblyInfo.cs index e0cd7e4..ddc149f 100644 --- a/obj/Debug/net10.0/CameraPreview.AssemblyInfo.cs +++ b/obj/Debug/net10.0/CameraPreview.AssemblyInfo.cs @@ -13,7 +13,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("CameraPreview")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+5c4a8724900fa1d2eb91d0cfbb4d2d21dca098ef")] [assembly: System.Reflection.AssemblyProductAttribute("CameraPreview")] [assembly: System.Reflection.AssemblyTitleAttribute("CameraPreview")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/obj/Debug/net10.0/CameraPreview.AssemblyInfoInputs.cache b/obj/Debug/net10.0/CameraPreview.AssemblyInfoInputs.cache index 9839988..21ccdec 100644 --- a/obj/Debug/net10.0/CameraPreview.AssemblyInfoInputs.cache +++ b/obj/Debug/net10.0/CameraPreview.AssemblyInfoInputs.cache @@ -1 +1 @@ -5a5149973964cffcb89d8df3cd5f6ea5f2e90db02df04f8185c0798d2a8e4b9c +c2e8dfba618610c2f16f0f2947d9d269a0e001774f8e688ff18a9515da8c898c diff --git a/obj/Debug/net10.0/CameraPreview.dll b/obj/Debug/net10.0/CameraPreview.dll index 8f8f8cd40500e29dec7c620107889b0cc85ef3f5..50e4c76084c6ab42200330a4791a3c2528a1f26f 100644 GIT binary patch delta 3898 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 delta 6002 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 VA)E$~5po9m&4LQ=87CUB0|453mVf{N diff --git a/obj/Debug/net10.0/CameraPreview.pdb b/obj/Debug/net10.0/CameraPreview.pdb index 01b7e108c1ccc14e7162d8fa7b27ceec4bd6eb76..f1576a718d1f8e0d35a41211250dc4eeb4187687 100644 GIT binary patch delta 1410 zcmZ3Iw;_3gN__+a1A}rvN)iJD1H%;t1_lcz1_tFi1_mBx28J6Tx!{tb%)Insko*&7 z1_l<8SZFZA3uXp}1Q6Rj)YFB5fx&}?fgwYefkD|RCm&>3Qf-WD@r^&u`@(*Hh&}Kt z^2j>JW<~}Ews27<4o)rx21W)324e;WIR<71h@o5z3=I4X3=CEb3=9Gc3=FIc3=E7D zkLnA8B)AzE7?cHjq3ZvG?P6vS zgYrR+Vqrk=mFmGRL*h2-pZ21_lOh1{IKAuu+T*f?&;( zV9ko)z|{mB0SX{C1``Gb26l!Hut9Se7#KJiCVv%xig&&qp~eb{UjJpP|_c`I3}kW#F-UU@>#Txs``jVJaTyTFsUeuew33%@3> zWP7PlexFm*^vv_0#a7(Rt16crcF0k>Dk*Pz(Qkgt8L`bSe4971$7?X|m@H(V#mF|< z*1(nBosYqYL7r#w6ay_bO$H7IiI~Yp3?4AbO?Fh0tLF=@EG|jS)pIFIEYHkK*JWH) z$GEDMan%CGRjU|RZDU+@jB(X<##QeaSN&pK&A_;tmvOZU<7x-S)xM0Yb2J!b7#rs> zHeO_Gdc%~(*kZxhxt*ycnXzR(W6LMT)?migZA_hanVPv0m>3usV>uZaG+7FH88n#~ zU_?ELX~@Q)&S1#Ipw6Jn#2~;R!p6YMASS}V%b*~@z{Q}z#K6U%#Kgc2VaaeHiE%N= zfn*t(1mxry8GRYc85$3*lfxO$^wiH zot%se-b@^h77UCml@OsmPDTc2CJqG#My5(>W(EevhAChdbFhI5K3)bsCI%Le92=u7 zqpuiaI15P0?8ylEI3~P!zeq6*W6DHYbQRn*spqJ_Y3f delta 2785 zcmdmxyd-aeN_`9i1A}rvN)iJD1H%ml1_mD%1_tFi1_l*Y28Jsjx!{tb%)Insko*r; z1_l<8SZFZAA65p201(?f)YAo|kBx!hh5-YEvQthz$S|8_8lsO*Jole^Qo8TW(Zch# z-vV|pGBB`(%QA6raxpM4GB7ZhGB7BC4P<6uVBlk5U=U|uV6bO^ND448FmN(3FfdI# zs4obTlw)9EaAsg&04e64%*d!&|3I6O;iEPq1CtITgOLs+L#PfT1FJ5`rHl;ax{M5U zx{M6Jbr~5}=`k`~(PLydXu!z8%)kh?n}LCa31ks711kd~Lo)*dLnW)3|tHdej6i%ug<{8;K#_oP_NIxz`)JG z%%B0)5W@)J>oG7gEM#C{sAgbb;9+29(1*&$GcYjlGB7h3LHUcBAbb-BMg}fWurosV zrVNY>f(#4{FQMu!85kM385tNr=7aQGF)%U+GcwdOI6yVnFfcMmFhZgSq`;Peks+Fq zfx#7OfE@!PLjofMgC3M`&%nrVl#zi!1Il+`U}Sj9$iR>a!2~W^jS}2$X0*@h=JT4Z}%L@?lT_$J-JHP~=PoN6A?R z1_lm>DsXUv(jgZE8#p9E0nWn!F=IE_ghL?17&5_ZkX{Cc{b2SnkjeE7pa5lNC;+E} zG_VDr?8L#40@enyn316oq?Ex8?1&z)%2{BQpd7`x-`b~MPV?BE>2!2og!CqumtSTmA~z((M9&=IiP&x0Mb7pzwlECR}QObj5?m>EE7 zSQtQRSQ)m0E#3(ZEs!iH!+LO%+zt*cKT!JT0~Z4P44^D81ZImc_%Sdrh%$f*1#z&5 zG}vfR=4#VsVqjoUU|?m~qOH!r%#g;Y&cMP@!`#5Y%AljOfPt04Pv-ywE5m)A2MnwX zvAPb7tPFQ_6Bt<;TJ;(jSs702EnsA2$T9%Cy`Vn7*pQ(hzt{*w7=s8C21f=DhUCQD z)S^U&qVyz&)QW<{yp+@whT{C9lGGH2oYLIPyu`fZ)ZqNmqU2PDG=}obl#&dFOol9m zY=-2-y!^b(=VOk*kLxG(Z7H4QkItr0ZL4%K5BjU$GPi*v+8I!l_JrLjvt}HG|&DC=$N-WRJOP8B$s~}ge%ebnOan%IIRjV0S zZDm|_ka5*T##N6PSN&vM&C0l%n{l-S<7$1z)!vM&BN$hwYct9)HXdSZ{La`c#FWL@ z635u%!PL^p*m9MzRf4g#lCkv;W1AgQPaadV0VoqOrgAbecr$TWFfg)If(5cT85x|J zI20HdnJP7z7)%%#^Enw=b6Gh28SDfYco+=X7|a+9nNSEurb<>uC&tDYX=Vln#)g*3 z7Yt$76uLmK?V~Lp#~+`Sr{1^*cepUKxH{ALq0bH zBU3&jgCrA&B&hIaXE0#~$w)GVqw#%Vd=`*AJCiR9L?;6q15>Gm95;iyK(Y?VAF7PT zj13)(4fh!vJ~1}3GB!%EH(GEuS}- zoJ?F`cdIegOENImtFbY#G8D6ee8k6=$Odwj9HSDWJ7YLwI%7Fwqby_NWyYq{jLklb z&4u+$%^6~h4IS(t>wmH`GT1Y5STWdxLXaO6f;@sO4ZyAt#*cmLKA?OJW!Fq5I%5gI&@IgXQg;9_(lCfbvW5Zg;hTV(}C)peB zbArP2K2swPQ=>goW3d>c0tW*FVUkM>7&Q18gqR}vAS?lvNNxrJ1|?A0uf)$F z%4EyWAj+U4z#zz=!^Fv2d_3@G^0M)1Mwwy%GaMJqrUDLmUeObA2Ep+Bn&g!NCT0qzDrS z4}%yJg9w8V6R7#YRLRJ|T&@RJ%>fEj5xzto1}P>`RmH-<$zaCHz{wN}4rYD^Jpl%0 zhH`{jP8N`Jm>9q&b2D*p)PqdmWRPHD5Ms*Y0VO4{PI0DsX?Ris+rr2a$;iN53b7ZQ zxET3BBK~j@b_PkaL_}&7V9?`(TMpL1#RQfHwXv8g!x$qNTemZ&*E2S(V{F*N*l>rj z;T2OEW78JKrf-Zbc8twpOwG1T&Ag1wy^PIAn3`LdS|S-+CNs5kF}9pxY}I6H`ODbq p&(!M1)N+`qX*FZ(EvD9sVvJ&-O040$Dk!6~urshR@PV3ed;k=mhQI&- diff --git a/obj/Debug/net10.0/ref/CameraPreview.dll b/obj/Debug/net10.0/ref/CameraPreview.dll index 2a8769cc664e3624021d09765d841213744b26dc..3650a83471e089b69b425be3ef05ba98b3c49fcb 100644 GIT binary patch delta 1193 zcmZqBY0#O_!O|KVxM^aK45Qz~mEnAU+!z@A85kHC5*Qc`uufDI=4oJH;9+23c;Lps zATwE!NoR5-qd#NFc$u8GxdJgm4kccpV=(P@}7~2!C*2Y zn=nrg8v_F)0~oVSR%9}m9KfbgFTupXpj^km(89#Pa0A2+E-A{)OD_gl9K*`Mz{0@5 zpd1>^kig2oAOK>!hkCj&FfbIbGBC(6GB7AR<>V)U6f-a|FflMNhKn*Va56D4F#KXP zW)K5g#vshVz`zW}ASsX|_!$@&_!$`L!7hRcGB8Lnfg~9i*cf~ni)Ixw*@h=Iw=3?TLgFqsP$Sqx^Ig4MTy$%zagGY>GCFtITt zf!XyD3?@um4C)NrAUA*<3=SZWBLo<9m`oTP85kKD8JHObzz+2Uu^HGHf|!&U*ckK} z)EU?q z^caL0EE)6|q!}U@^ca*G5*hRuv>DPE^caj8mNDotSTpQo&|`3BIKrUE;LUK6K~|3; z7%UOZu#CZ(A)A4f(V3x`ftxXzp_(Ca@(3i`-N5Qi~ExQd1mDN{TX*N=r7|aZX_54z4UNNzK)BDM~D#e2Pm;0?H3c zP0LA5F3HT#V@OWTD@iSy%){;J4V45b&df{K3nEg4854Br+H;P#j;AH>+ delta 1081 zcmZqBY0#O_!O|AEc8h<#m3DNALE|+G}Zl=5H2cdC$niz%rSU zO_(Qvje&uY0gTxuD>4~O4q(%$cVS{+P_AQO*uccVFayL6E-A{)OD_gl?7_;wz{0@5 zpd1>^;KRzmAOK>!hkCj&Ffhb`4^U|u7m07EYmgvZRl#VEi~%*4Rp%D~9L!obGB#h?LlB!dP+ zfCDH9CNjKc)Mj9W^4cUgnb;VZpuA}eVN8Z_9!Sm_6t?vYj0}OGaAU}15)fcw_`nDX zvTi0&U`}P?WZ-0CWDsNk86?TT$;8E=31%BIa54!nSb|AMFzE><1Hoh@m`ntdnP3wN z8913l87jdf4+AfQGJ`rpGQ&>>J%(6r21f=x24My-20aF8hD-)M24#jK20aFChH?fy z24jZp40;UK45t|M7@QfdGUzdQGdyC@V+aO|M>A|^aAwG6c+23-P|Wa|AsNh02D6(P zvKc;4p2#7rTg$}2zy%5(D3)SS2D4Zgn87rIjcA14Eote}9bpa2i60uv(-&*U%M3pu$M8CVVV4D<{p zALlU@`r!sK4MYmLGcYhXOjHzOWSOkW`*N}Ylg?y5zC5uCW(I}{2@DJ`KzRYAkO9P= zJc(}}qsL@Jeq~0L&7u6e8JP_j*d_}LYEPadXvNsE`K+J`(_{mt5Kae337}#Q&e#(T F*a1{V!j1p{ diff --git a/obj/Debug/net10.0/refint/CameraPreview.dll b/obj/Debug/net10.0/refint/CameraPreview.dll index 2a8769cc664e3624021d09765d841213744b26dc..3650a83471e089b69b425be3ef05ba98b3c49fcb 100644 GIT binary patch delta 1193 zcmZqBY0#O_!O|KVxM^aK45Qz~mEnAU+!z@A85kHC5*Qc`uufDI=4oJH;9+23c;Lps zATwE!NoR5-qd#NFc$u8GxdJgm4kccpV=(P@}7~2!C*2Y zn=nrg8v_F)0~oVSR%9}m9KfbgFTupXpj^km(89#Pa0A2+E-A{)OD_gl9K*`Mz{0@5 zpd1>^kig2oAOK>!hkCj&FfbIbGBC(6GB7AR<>V)U6f-a|FflMNhKn*Va56D4F#KXP zW)K5g#vshVz`zW}ASsX|_!$@&_!$`L!7hRcGB8Lnfg~9i*cf~ni)Ixw*@h=Iw=3?TLgFqsP$Sqx^Ig4MTy$%zagGY>GCFtITt zf!XyD3?@um4C)NrAUA*<3=SZWBLo<9m`oTP85kKD8JHObzz+2Uu^HGHf|!&U*ckK} z)EU?q z^caL0EE)6|q!}U@^ca*G5*hRuv>DPE^caj8mNDotSTpQo&|`3BIKrUE;LUK6K~|3; z7%UOZu#CZ(A)A4f(V3x`ftxXzp_(Ca@(3i`-N5Qi~ExQd1mDN{TX*N=r7|aZX_54z4UNNzK)BDM~D#e2Pm;0?H3c zP0LA5F3HT#V@OWTD@iSy%){;J4V45b&df{K3nEg4854Br+H;P#j;AH>+ delta 1081 zcmZqBY0#O_!O|AEc8h<#m3DNALE|+G}Zl=5H2cdC$niz%rSU zO_(Qvje&uY0gTxuD>4~O4q(%$cVS{+P_AQO*uccVFayL6E-A{)OD_gl?7_;wz{0@5 zpd1>^;KRzmAOK>!hkCj&Ffhb`4^U|u7m07EYmgvZRl#VEi~%*4Rp%D~9L!obGB#h?LlB!dP+ zfCDH9CNjKc)Mj9W^4cUgnb;VZpuA}eVN8Z_9!Sm_6t?vYj0}OGaAU}15)fcw_`nDX zvTi0&U`}P?WZ-0CWDsNk86?TT$;8E=31%BIa54!nSb|AMFzE><1Hoh@m`ntdnP3wN z8913l87jdf4+AfQGJ`rpGQ&>>J%(6r21f=x24My-20aF8hD-)M24#jK20aFChH?fy z24jZp40;UK45t|M7@QfdGUzdQGdyC@V+aO|M>A|^aAwG6c+23-P|Wa|AsNh02D6(P zvKc;4p2#7rTg$}2zy%5(D3)SS2D4Zgn87rIjcA14Eote}9bpa2i60uv(-&*U%M3pu$M8CVVV4D<{p zALlU@`r!sK4MYmLGcYhXOjHzOWSOkW`*N}Ylg?y5zC5uCW(I}{2@DJ`KzRYAkO9P= zJc(}}qsL@Jeq~0L&7u6e8JP_j*d_}LYEPadXvNsE`K+J`(_{mt5Kae337}#Q&e#(T F*a1{V!j1p{