opencv-devel-4.9.0-150600.3.2.1<>,gp9|K^yWYzpXtz5B–dqvA)`rdYqYr2t1[\*)A"%k ߃ꢀhC)]N%k\ccfT a@G<pT]CIHXʶQKN6B wQͿZ#&X!NiF`>35l\b2A ?d " Q 5Vc y         @     4 k  Do(8@9@:\@BF G  HL Ix XYZ[\ ] ^Fb?cdienfqlsuֈ v޴w8 xd yzCopencv-devel4.9.0150600.3.2.1Development files for using the OpenCV libraryThis package contains the OpenCV C/C++ library and header files, as well as documentation. It should be installed if you want to develop programs that will use the OpenCV library.gh01-ch2c`SUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Development/Libraries/C and C++https://opencv.org/linuxx86_64h)#f AaT h! M >? `<)pj<0[-D!c 'M'~ ~.B'#$yp "54-  !JS]xP:787ZMZ .u<)hquF  y0 Bq%:[P-* ! a"HYT  > 8 e o  L5+^TW?i x. R05 y!/$l !vI e xwY'1 " ' P$B  \7 = = D'm z$LR3sD ?$|  g~*0OP 5=bH " s; A (9FUB4)J#k=<y( ]F D l!H 0^5t:S +tg8a 0 ^_`o#: x5 GRL X,xFB B J o #W. qYs#+voh@O A(_e C '-/^ BFi <"KX; *   C 7Uu2 ?  ?))9x) -F*\3( ~7]Z^V$z _"/7G*  J~M 53_ ?b2y AZ/N,+ r( 5(, @ A "5aXE [ Q "+ O@"i;.j90-,^,^m jAA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤ggeDeDeDgeTeTeTgeTeTeTeTeTeTeTeTeTgeTeTeTeTeTeTeTgeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTgeTeTeTeTeTeTeTeTgeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTgeTeTeTggeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTggeTeTeTeTeTeTeTeTeTeTeTeTeTeTgeTeTeTeTeTeTeTeTeTeTeTeTeTggeTeTeTeTeTeTeTeTgeTeTeTgeDeDeDeDeDeDeDeDeDeDgeTeTgeTgeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTgeTeTgeTeTeTeTeTeTgeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTeTgeTeTeTeTeTeTeTeTeTgeTeTeTeTeTeTeTeTeTgeTeTgeTeTeTeTeTeTgeTeTeTeTeTeTeTeTgeTeTeTgeTgeTeTeTeTgeTeTeTgeTeTeTgeTeTeTgeTeTeTeTeTeTeTeTeTgeTeTeTeTeTeTeTeTeTgeTeTeTgeTeTeTeTgeTeTgeTeTgeTgeTeTeTeTeTeTgeTeTeTgeTeTeTeTeTeTeTeTeTeTeTggeDeDeDeDeDgeTeTgeTeTeDgeDeDeDeDeDeDgeTgeTeTeTeTeTeTeTeTeTeTeTeTeTgeDeDgeDeDeDeDeDeDeDeDeDgeTeTgeTgeTeTeTgeTeTgeTeTeTeTgeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDgeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDeDgggggggggggggggggggggggggggggggeTgeTeT611cd1d9648000e31c4a09806ff30eb538d2d63e7af055feb6f6721a9424576c0480e30b3077af75563f645a778a521ee70be996d440b817f7b422815ac9d0b88012a042d86f9fe430dcb431db60af5003ae09c044fdbd6172178496de3a90fb0802032b19e2a63bace383e774a616904b2079b672bf9d87439eb1f5c02f9b3d84cafb3c18dbf7c5f6c34e9eff0c018185c12ca9c3cb00955d1452e42fcbf5e5c0208fdc32f171d444d25d7096ac9a6f1dbb903176dc3ddf366a974293028bd7ae5663b2a537b782e2b81643371fb33fa549f5a9af7fed5d33cd42e6ade2ed112bb08c58a49aff38d5bf35e99612fb0d24f0bb1991ddf33b70ffc923393a887006b3e977168204f5c329ae60c9c4d4af1e7fe82ed7da130a5fcf7bbc2f4ee42731560c66dfdc85c81438a226d3d8265e8501dc207b4a259d12bf5863e82b9bf1008452b3a3a28a3e7431face1301ad1f20823a1d2142e8c85b36e92bfaeef833fcb61a830d257ca50c45822d9918e5fb8719e4f5294ab5791ed8f9ebfa79e723a18a9ac24e21f5c27d47c52a89ea407f0de90d630239a6cf54e14061abb42d6b21a4ea4d80847984ef8eafe4746ecc18d5bcafd10564ce4c24e2416043d857987c5d2883897df0d8f86a322078c32132cf890a34f45fcdb9460f1bde84e97466cf40cdd785de588f59ea8af6393aa17a820c72618d677957a2b022e5360b0ccccaff4880ae6c88f63db928666202f1468c8b16e02843acc24e31bfb0c50091b8706494ee8db1c697ffa51541ada3ea6eace83f2c776c9fd24f755bb412bc2c6dec035bb5aba46f139fe841ce5b09f0f098d330378a29b39db9f2d38f19be19c20092ae7b45369b4eb86bc3b9c2cd64331c93d3ad9c338285e7f842adc3dd33316a55dd5069214420988d6696d4408822c55fff74bd3908849ce927e4a14b2bf37f9cc05e1ba9db626bb6cdf2833b3f56c0423efa9ae8bbfac7a31ae7d4550bc479d28f503115106ed34f914e73a184e7691292afa0f2bf1abce5a50e6fa9ff41ffb0bf1cf90603ed95ccfebc0e3c697289f3cd3f5cab012d7bae116fa3f96811015e470bdb82af562d1ddd7216a9ca3078f57654a1c54a815603e74d17216c8672650821b8fd19a4a3b2c18a9bad2878064f41bb82206a1297c2bdbd0193aa82cf9aa11a5c0e8a599e93ffd40d3ae45d62d1da19a4b38a00d64c14d8caae8f2ac6db61c660a173e05a32ba205a113b562316fdeefaf70dcf9c12bc1a22d31a9b6c98892ee9425c177d54d8b1f434396b87124250a575cd2bbcd410b53888c9aa675546d761bb50159c27b8c1afc0b7f97981bbb6a3fe80befff04e6d2ed02f827be49a92d1376c9be94721c15fd1a3b6005a4db6cf1bc5d6ea2476a9ee2a3bb005038a7802c6f01d755f8bbfd78efe5d09790c3fb1722a8f24a68d4048ff38a38932acace59199f392c2d8404d163261a89c5e2f6a72d573b4ef24078d4205bdccd8bb12cc19901476bb61f5b25d62974661481f9e1126ed3af3439a85c100fad4b7b899797d2d47bde358a8baa0237041edbacce6027f2c513d21e0a5bb328f63d7ce621e96bad38aa846b9bb001da72048f1dbcd49311606c35a238ae5b9262c3f207fdaca653a09e9167fa3c0dec7e46469c029be17942c5fff0fe564f4375501456d3853386bfe71e11a2ab86b3e1c3122ea644d64bd1a3355bbfef48bba4ba3c9a282bb1e0d4fd0f00aacca8b4e00261e4c63f2c3e7f9ed472ef320b2884d88a91029fa59f1c37a0efb021efe332450c71e9c0194840fb01157fd193f778c6ab8996d00802d47194035304744ea6e81c7eddb4c7a20fa4143cb647051daf48fdf00b959c67edc38cdd107464c2901adc03dbb6c5e964267813332238195b254df03f9a8e51270f4458c97946d28bb84caf9762b9d00b3956fbc490fd90b8d2df7d1b4b560809d409e5d9ba2e3c12a5d85098a8987c897e239ac9a8a3109f96ba84d3b06426b3676a1ad09e621107adaf40fc3fd388e7dcbd323cd1db55e9ba443e97474d2a97cb8b99eb6c22f76659ba2cb8d352dffbb1c9deb9b9443738efd947fc7abae68bc81841a1243d49022a5328807143d3b818d82043eeeb82ce23118e9761e8eda3b9223aaf5ef040f58751a67d641953f48f29be9e354b31e4ed96ad8b43a414f90bb229b64770ef53de060b3bb3cc3261a033ceb03823e04001df40f104ac1eeb75333a2681d45ed501c4592b678a92d5f66a43bf09accaf3dafd54f9adbdb9bd39b7ed81f4ea25eeb81117356e974fede4648ded4ad16a97a3c55394ae0e29b76a76f60124055fe5cc2fb6536971028d63ef8f6592537dc3021d6a142e970f139567e9fa3621d44919fd3f300b677dd58399e84fc266fee33223f6f38d88607f3da7f02683ff91aa07279240d34084e1a0fe7b19ab5ca28babed4fc9c3d804502aa053c5add427600600f080984985812d8cce716b35ffa0339391fc8b45a4969fd5de62a80ea6370de7dd9d06f0c4a6702eeaf37060e59a6c812132580f4eaca6f35f2f19b32d40b24ef9ab0b75b51291c551c6b4224d97f4b91bfa9dc36c9a0ca6a7957d8cab2dcf9702dd1b7d7956a6f5d85c5d51993ef2b12df417633e49c8a7341e9f82d70eff7ff84fd944fa098947254ee491ea847ea8b7e561c68ef848f99639070c7db1c753d24a6a1e86f61823a85680182e61b6b478123cd15b7f24f2f3399d5c9199f7af979d9b57f0b0265a02cd42794849bd5d66e4970d874d3e5bbea4999dc645b74b119ea6d6f529a1d6bdd945604dec998f4ba12dfa95ca8c53807d0e52e094960f1e3a73211967574ffb963589f6818d8096aea9826c4af7aaa8436db51f58e3fa497ca097a3c912d482576abf43dbd11814cfd2c331eaa93b42d80a0911a4916f6afa99907f332fe8f641098eb437fec7357769d542ec08c291f503522dec8e10c042069d06f41d2d88e4aaf45d305aab645dfba7a238b84489dc49cc9a725f20ccb8871b6180b8fb4c19734e2f3082b4ee5842b9cb22024960688fe78fe703a7ae253f0881783259ee7a48b5bafb38acfbeb485bd3d4e00a8c5ef8bf7f00f49db44791709d62b449e838277760fad93e16fdad234aab37ccc96bd37768f213c6ee2fedb3c6309e1057307f621f27c85b2b3adc69054b1c6f60b3098dfdc6f4eb5c0080a4f14b2db729f56993cac34365011a979f3adbaa8aacff507e73971ce35cc2ceffc9d65800fbb3bfb33f260bc1a64157bfaefc84ebe0ee807eebe2bf1d7a9a1b43905a1287551f65cc2a0e426b5f8480771f4f00004feb164784f57e79a50b5011485abe58e4e4eca9aad639c734a2c54f61bad57b618024d466782da32a6e54a7182ede5ce762cabdfe348b15682847c42274ab12a2a6c521dd8924d96ff063eee02bc7a8f335d11170b9ef43498562ea790ea70a47255da0c57f5bde60ab4baff25d85da223431a8cdd8cf2b121803d8a37675cb0648f1d9a550bfe51cb7564a8561ea065feff118fe297b0feab592a11a67db1eecd01a7e9737762fc3b86582fbd17da2364ce84b078a94e709abcd7759ad4ccb9bb79feaa64b98bfe3d1c33b2fb701b7cf711365b263f6a6dd88d356ecfe8411669d40687da3a7a90882ab089271fa14a2a89d93dd0a72121f63c820568eb10a3caf99466cb17f384a146337d53d6a8d3f85c969d909a8369d287ff500756fae5577f528c360f011e04e5a4a44f5af1d697b1d1442a6ee953e463cf2d5e0082ff578bf8bba8681d07882ed011877528c8ce34f30e045b33c4d217016636143e476ee3e59c267ae07cc67ed3a171e377db2fc5f53f86bf5842830c95304950487c93f9f8ec5ac29ad659a316fb2ea80407229ee2a6e0a7416b4d5fc41cd2df66f4fdb36a0a85374d79de3dc5d8fb38ce40be049ff7723dfbb7141c796631e36fb8b6f6c12e62161fbe39f6ea7f12a51c17172d7cdd75b1a8daf936c5b96ffb029cad7dcd3a3f7df798e02db6425eed7bc3e857c8d86e4a130e9c21fb97f76dc4d5a271f595fd2a98a2090b7e33ccfc74d6943b8f7695ac4f537960e50684671ca6a4b95c1eb6db5ba05e8d9f42f66b930ac8702ae7f9f9eaf56de5ce1f830af32a81b2b8ad243621c719c2e051c97390f3eba31137ec9744e968d9bdfea84cdee4aeae0c141e300cc90ce44329accdd535952c3c48dd9bdcabf71097dc339f80702269616dc5755f718843759941e79dfc25284c8e898a1c4d469a3e5f698c1cb69cd2b9f676a204cd3eaabe0098f09b55cbf1625bd873c8f9da9214399ecb88b7e478943ff311464db791abf5625b3b31be479c9da402380689f8e64c9343cf995bd05a24634215cb8c5ba0d1dc8ec5f447ee0ef8e2179a73296a8eaa588efbf2ab0b1a0d181a6ea506aecc50751611c1a97b285c3dfb5cbda14014100c23cbd29cd7f542ce6ce6389218532aa5e5db012bab985f513176bcb1c25904ff4795c0f70ab0fee92f7d4892cbd5250c9be4ed63612647b51b496c1015cb6ee9db7068bd3a6c6da80729d7ee815a15de93dbf9cee1da5d37bc9e212a5cf9019b75e2a47683c593a10390a1f7bddcb3ab796fb2fdb609c0523b76c057001979ee78c6208f13c8b684c4f0e4d5a7b4a7d597495b80e65b95ed3a68d279e239fa325d3abf0113061727251c04a4d629b2f85ce46426ef582e99b9e8a9b925a815d26bd1ce94741581f3568027d3b93993f0372a0cc84c650115ba119681e962a46083f2985fcb88c325a5277bf5b119e6a7b1508807ad0726628c3699033b34fe4502a0c891217a00322a4c8f21ff023fd820a6a0107707d95c85bb84fc5eaf8f110c3d31c42b691cdef2e9ba6a9a296a788c3e0892a934d7b72297538b39e076d21c167fb66facc41854293a82f5d34f245083c797cd9b0ffd56e3927d9adff9edd71c42fe675a962660527db1374901f08a8619a876bf9c6ae72f6ad28d18a825c8caff56eaca1642298aeb4af960b61ee1ef12e987c04719c7ee18c7bf334328e8faa00c6ed64af7458d9f9d1b081ac9d4d86d866df7b2060f04addaf6a9bc14a13d1e842a3b949c3b9a1e7da0468878d388a072993d418facfc26fa3409d2c7dc897fc816a6eab67554414a514a1a062de68a68cb351e80e4b13bc11c14d59f640ac59963bd02670ca352d533160d539b6e790052051530903d8ba56eae3158e816522c5a816e9e9811e41c62e812a34bbf1dbfde81132eaf6dd3c7162df172e8462b8c697f2fcddf2af1777f98a993ab3be8b33fb58b7e79c71d6191b0931cb1db9931ca4ecaa156cfec83bc6e4e71b8407722ed3d71946e67061742fa8f46abc2cff22f42b2be3325b22ad51c10beb6007dc6244da53a6f2e1ebe44bc17edd4359772260606708f5ab3d74e1bac61bab947c8270aa470c875f2ffefbe8a44f90109f0441669b52ed27ff35062eed54949a640e27051064ad0e5143af2998fd8f77e058918288ecde5466e26840d0ad7047ba12afc29b3ac81c6962c8b5679dfb63fe06487c27ae197946b66b1df90ad46e410a11a5a2043c01ea3c1b3f99352437dddaca1b9b862e9d9b734c7a901f63abad5b28e34122d9f170fdecb359c434387e6379fe5f16f9ffc77ef8dc4ba111ca517c3359023d42b16b07b48710d90aefd4a8dc1caa3e889bad5695b820a1ae09f68fb32426ea629ca41f674909959eb0e6207ac260d9c41f975560646a7f35984c134c2f442f3568b6a654eaa2af1dc2880f6f7916266159e864351ae8753adf43fe83916f407e6a2c4908d1b210239e98778d5a4d42820a71c1686189fbce1be74ae2ffa02260d7dff55a04646ae7f78bfe7af249fe2bbe368add0c934cad108703dbb56c1d5c95cc89c437bd27a862ff9d530e1d9e4e0cdb60030b3351474118ac5af2cd9584606928e15cdfa0846f97a4f1922860b6f193e0bc3e9f15bd58796edb10b862565900dff6e97772c2cb1434b8d136df85446e4596a708d73ae14f3cae9a8d8dcb6a1ae866d143f400f844a4761b52f64429342a7511d1f6402b87105511e9d03bc3fd53608846ee3ad1b1feeeb97ac68e9758f4ceb5827ecca87c58204304c4ead3a377c11c77bfe9832511b69ba41baac88dbe10989cbaff376ff47a6fc6f1ab5f6f986e02af6aec74d7881ce0676dd82b215c4a5b33087f7e8010a1808b53b3261c3900c2d1ab82496b6722979996cb899f3110492d7177651790b6f9aef0f0d8b3b0c68c871d026a95c549110e4438f8b349c42864ac7f49a9b5fe720663da1e78ac9e178d0ff6b2ef03e3cf912582139c1531142a338ba284b3906181bdf6998ab0f089ab041a50261bec0708fa763a68373ead7889f099ba59bdb9ef5277f51881e8aa3a3d178504522f7cb33222949de7d4a27ffcfbb4f701b8f27dd4558b1f3e01a66a01b9f55080496995f186bfbd9521bf17e9aa10ecf69e8efb5f2012cb1f4980d641f9dcacba7694c5b129af5589391154e2b2f00477ac3130916d3b6bdcd230746b0d374d3da321192d079880a2024c18a737686513575649c98faa03a299e950f04d48cec6d7305176fa696014a773b8a0a3a29ab9f9a614e9ee1fb41032cb1cbe2a3b058f3cf710ad24f4927718adf81d5d495ad12e146fac979c478eb31f7d03898c536f03d89e439c1c242c44f41dcd6fa63d776e5249075e0aa313cb8dad528be7ae4e9daa8bd77690e299d38c91182c8913364f64b74e3db29dbf6e4928c4a0023ca402e9a43921cd899731f4d763841b235ff503c0b99eb0735179508700667527805d2f0dfcf3a0735abd005da461e4f35235c7935186db370f2d2090247b7f92119ccd0af87086e370b31213db7fd943a5ec340f30deb20d27d8dbe6ca41cbc6e49fd082d8a7f3108c181be905e480cc5fa2570471513043d7b766e282712f0936e5877e51e09696fbe30f5b5e4409381f807ad3a46cf9fa849676be217a77c81546b26ee46f51cf2dafe3e9d5603f1e549803369bcd03f638743f97d4f50f7fb6edf29be408b4eafcb5da34efb92548666a8b44c52d461ffddf74eadd2230fb056752950ed3831c24871f565cb3db29027d021bca0291ee4d75ed90cf0dcaf681c7e7c39e69d0ce2c2512226b37ce73e026ebd7ac5b8efae55da64e7448104a20f84a0c48156df988170fd2ccccde7c8c5faa3b84457c2c846037c73a1f52d91eb32f8689f1ff49b16dbe14da606539737a14e46343c73930b2c63b5a797b84f7e5910e7610f807906d9a006ff79d522319da034812187f68b5e1a7c6239149611a3dcb86b962d5c724e5978c6c3d5c06733d06503f86ab5f0637564f6e2d5435540fbc005d83343e26426ef89178dcf8395c768ed2fad0381d625bb2bdfd3a9cbc49f8668119ae7ccb4a2ea48a5780b1f2854130db0680e0df847224e8e175dd8aaa97c983fc72bf3485641edb442bdb33c1d797a8c4b882ff82ee8d8aa892dccb13e26a0a091a18eadf17c64951490ee3026894fe9c4fa48d06743b83af7f3b7cc4c66da1fa7d6c94a927381827e72454c77d3a92499056728a84fd1db1463945694472191e2dd222e321aeff0271ffad8fe532c131b00b1ed7ee05af4c53dddf1a00892d34f23f87538a6bfa8513527aea320ebab6d628cec97c170904986fda475e31a2a48040d8a492cf891afa68ca4872b3b15f77754d790637d2ee5efd5ead1de2671717b87ce8d9852b1d40529040e4ab362c9836599fd561f4e7aa3f31fb076997b832f96d3d31f6e6819b8b0f7dd3d0e173a3858d5b586da6d7a0906a44797753c39e06fd8699ce72115b3c84fa35549ed7d14da392b58d47d4a415acef4402205eb18303b2f3170d87004951720d231953087864c437d95320bf26efe97389e7fd62ee270774d677703b8cbb9795a99d183bcd295074d90b0050a999a8a85d99d4ea72e94bd29dfbf01aaebc66e83751a24356b16b9016e02a33639261184c4e0ec98dfbfc91cfacf7113c25c1cc66899d64e113f09ca72ad99724df818841b86917f6e57c7488013dd233fa05d19d6777a4b56eb6e146bfaea5c5b44a463fd3cabb4dea779ee1eee36b6f3dc145dd72289ed979f27e18d7fa1ddc0e045906f357d68019fb7a2aee4ce4e57560662799f4921c510ca43c628bcda417249cf351cdedb7ca44bc19776a9f81a43ee3f5636a84a20e779b97d3cedc37d3eca6f32c1d456c8e8a534e6f12a08510ee8bba178cc304f1fb3b8ffb714a782a7eb967ab12e1e42e28523f3ad55fe68cc2896adfdda97000266fef461eca40133cf3e639be97c6372d5fd68ddba17934b723ba9a17c9c658da96d7cde411c4be255028451add15384e4ffa51b2c14b12096b23fd061ce7ab4aba8c6c851a27266c5ed724236843720d702fad2b1b4b3e690d5d0f8d3b3eef53e2ea963c68523d295027bddc604b8cdae96c7af2d2986a5dbf5eac6d1789a62c8b7e43d4f05d57ef04751e153fd648a200717d970d811881cab51faef882cfd60c900c8bcff4eca93e7b978568fcfd2a708f0d4743c69c1c733c7eb336c6e6135b6bc5285a8e8a21fde2f9642fb6a61d9a5263d2c202124ed1725e54ee147da535321720a48f354af259293173cf7d6edf725dd7ac3a45349fa4ca69de52d128f68a370044c7283805713a592b1fb0eff0826d3714d8adbfc704dea2c95568e2cd83e207837ed2b71775a28700dd87bfc0f80ea20ac22cd9dd14a8cd605f32c4d17f80dadb3d318b906b50fceac7c383ef25444c9dc01eee48303781603df865272cb64fbc9d451e5e923f6662ba6638a975077f0b032905bb02db931b91d4f31c2dcf09f68b94536ff8f75b9ab8450582f69460ea0f341e3148cf03504dbd1044ef74199e7cea34321e621cc41d182109c91358a3013f5562ec05f352e60c2100695f2dbb95ca205d8f1330f7613609ba5dbc2d231192dd0e5887342e351ce25feaab2af7a339e24a3becf5c84f662a21d27e924d0be2867cc77cf8ba969509820a0cade411f86f52e5324861e199e75594f3ae58a33320044aa4c77b910328536f0bbf5137d48248163f8520dc708c1aa696d748de472326ccc3f85aa53984cc472ff364fc26b054f222f3824c0d890d85c90cb6ce0ca8778d0bb3432120e46aef110001bce58319325567b75e0e496eaca3b36d519daafa63521431be8f7b1f9064077be93e70f942c14565e6b002edf778219aad206cc1884449b8f11af02522a9737e21e8052b07f287bf9ff18e4ff66be18d424b4eba1ae27dfb21fee730bee122e5a129aad1fdaad1c6a3b7d00672dce6ba9c2083ad47817171ab0b56ac7eaa9733efe8d024349dc93f8c2c96481dd3e35eeb280b2f87bfd130885523cf22c884333c87dab4e0de1b0ac4effec1c364082b15e386f526dadd02db9512dd92b15d15343a302dd06a6454dc4abd8319c06540c3f2cbdc424d5b9605c6ab58e2826f9fb7b7502bd0772364bc4538b62a492379c445b2ba2bcfca61a262655ac0d83484e68498299169d7b8e4c84a39b869fadf51c597a44d8344b940bdf5fa67f86f3c5a7b2fd0126eb7ce896407bd0f2f5df4226237dbaa6eea260a4153cbb1f4455e15e11e9bb17ceb2e6d1521f6838b2dfdb7e93a80f5b3869cf46b0b59738f6faeec42f09265a5c7fb1f2606aff58bdbe128a67dd5c163966c76880f9d87248055cd27aa848fc03a968bf44f39503ebc1106d39ad4eea88f7c802dbdc8dc49fbddcbbf0f7dda8933ece50f8212755d8dd84ff732a2d74d847bac3cd1c9201f79eb28c6644d302a7956fb64b4300e010244fe933813b30f82884ac7e1a3f82a28f5c587aad2ad3580b62fc7567485c73e71d1cf029d20157f5a40b3c1b5a4f428b7c394f13f9dd5726f43e8fee581ded5166725d2747afcc27b2369193ad081491b488a432582b1cb614484b3b3a039470f174122d620ed31616ffbda251f4349b042deb91dad6112d1b7d1020734617cd6c06d62fbc7c6dd7181ce383b5cba9d21a786ef1bcc1e8a50007a22ab7913c13c26d0b86c756e4ac3c0d1b3903ef456b34b013efd8d721c447b855d9e894c3bcabe8aa05115aaa66b39cd806f821f93b8f502ba3828112cb20d260779059a0bd6df033920c41529d1ee2c868ee3ad578405a1e58a08772fd401b04177f29bb241c892b3af2a325cc8d3abbde5a8ca48d089cf5e8439fdd7c6b024843c71238b89c36034fb96d07df8f64bdccaf6fa911f26b8d75b8acf3a63f0f70d2d7ff8d8ff6f4bbb3da2fbcba04d537adb9cffe8addcd9801ff96bab67f67fd60d783ff264665a417df3096fa8e055272bbb54f40dd3ac551769e44cd4c2c333d0e7013159c4501eca279730c6f704007182fd95cc38cfcd7714595b2553e6733aaffba9e8ff75618a3c48a30da5790e6a1d6c631b8f66ea153d181fba011689d0d8ccb7ea066ec741409a5c40a8dcedd19b137d3bc09658874c5edf03d6cebab19b6139804d83fe61a7dcb7cc50bf9a5c1634ed887add936b21cdb1bd8c995a9f608d13de53aa3596fd23683d9b2bdca6f3b7f7f94303b3ffacb8263a11745bd4daf385d948b3c5dfa97dfa8b79d16330a42d30014587e063451d81075eda38a49fdbec653536562ab586878d48dd724a173296c80b8cf94445f7f058da47067f6e6f10d80e9d43f0ea6f8e3f8de0b369d7b59f77baf87cbaac0d97f91c8005846b81c2a32c3e1284ad4d08c81f40b5af2f4eefb11f35dec3315068d91cc2f706f757f8628a563f48343fc7a86921eb92d682e28a98e491be72bc7fea7affd99cae1dda59ba56a327cb37db1b4313624b3f3ef9435f2d45eb0c947e370c8245e9c8c44dcaecf5e6e16291082e5ed1d90e969bd4b587eb50a012305fa0f4d10a0d01814b248ca61e1aa86b9e6d85baab9d67a1ba25e55f61a5404c4a7515fd874d145e5284c1f854d365f1a248b029a9acfa746c4cedb9bd2f0debc959f1f444530250c1689356417f6e21c507b0965110eadc14edb9c73296f4656dd7a6183e3ca3cdde835ab0ecc814d4c127d0039dd4cb4949f7e8ac2ae7f396a9b1eefaf0cfacd5c4ada707d9b2b072f2df6fc4a65fae3379f7c4a2406b44afaec44535e3b3ad9eab558924ae4d1bf40ff48bd510b250856ee5f936862ad546931bc81871b7ee756d02ed22e241e25d285eb4e881235d30fd7120696d596a17a9cedb22636ea63fe75f75119187629ea78517c3a013ea22d71dac9aa7543e62d04f5616794afc26c5c5e4ef765c52a7ed9a92ac8663e2be8df57469b6ad44526be816baecbb233d0aa5405a6cd564b4f92586355664a4c8a36334269e6affb3926a6cba22d21504af408f14863ab0889fd7f4d969a181f6bad094a7d2597adb2c8d59af3cb130c965e0cda81254927f4ce2522e6812549e872a277c4f88a4ad872fe7a15f014bd2a2f435140a5193be744430dcac5b66c21630d1cfcd7c384af41e268a3ca771f421cc225594fb7cfba5b68823e7889ebd9da7365c85664747108e935d2bb7cb6d95f09eb3e28bb7cab2e88b666ceca812ee464c75e8bf3bed2a1ae302654275b5c6ad41a19aa2f4e4142e063e4cd0b4761dbbcff37253a640f9080b27bb2b2065f0f07619e9981362c30104b5aa432e9ec21331aa6cd35ae75cee42866f8cdf95546fa16a4fe48b4377a30659cdc8eb568a76a954a52ec999841332dfbbb08f1238724e0f16a6b8c8d3f75261760e0a22681114b85ea8720913792d6670bc2776247718a014fc4de568bd9c1eceaad6b129d70cb8093c6407e58a0cfca0562a1ff3b21b7871b875f970bbf5df87340af63a7a567a25e8d9958cfd2570b2715211365761f8b59fd777f4b27174468b0833a44b4a6f588ccd3fff893a9ede60f3a1681920cfccec70e8008a2e16101436fee0cedacad5fb0d90b79e0c2869c3484b5542420b036aa55ed6f57b99968297b3ab548341c804d88fdb5e6aa5478067a51f2a37566b88460d043bb71aa0ead98863b908a1918029577834cd161311b324b09b817c56f2acbc8388cc8802dd60dc0a69f8b5370d10f4f9db327f9e11effbd38c587526f3ab516fa32a9d8591a831d9c5afd4abcf055d80bea152ede1cf96bf5a57047d88cd8176c989f7d284b97288351db4d216ca0a39e5c53bdd3f0c3fc2a830736271c1886daa2e2079b59a34ec8d3ac67a61cf2ff649462c132d09f68d3fa465eed54e30173220be4e1da12422767adb3bbe36a4a10c74cf449e61c99489c9e6e159a00f629d9879512b2425598d55ed63755e1a3305398f76fa20d7511fce0b68ded424586843f1c4eea894e3d57da9e806cfb4853e06b7eb02da7565483cfaff0ab10ee737547daa40b832fdbb28f25cf6d5e148041ff13281184f3293781ea34cd87bdaf727fbae75dd3e1d56dc559bed44a96274b464ce38479d6af12296a9492d7f8aa69289ea64645d281365ea29c545c0b7ba5ec141d324a9f30feb203f237c1a73e17a0e303438fd9f9b6f917a0117a6e89ee2b8e9f349e30dc029ec87f5963563268393bacb4c2f7e5ff9d7fec9cbc171b9e23d8305e87b09316658ab08db192630a972db387a93c037d64672d6b5822a2d139871ebd9f07f9c8bbd4146c9249bfb2ba8efa24ffdb48bc9cbe1875219395d6f4258a350ad924ab80f72f455b80bda20d90be263635a849d3772df6886a933900be905f34c3ca11b960bb1673141dde1304ee30018eea0f979b85162f2912c62423d05b497eb64f98f60246cdcd71ac912d05921cf3a2d2a937cb2f7d17d470020a38c6d59679ba8cfe7660080d55818ff98389c0bd1b49f25d9e3a2f692b23d5d1c265115383fdeaa947519e24bc0c37164904f5718856ce27102b5af8f20964b08ead71a142d7c8871151ce02ead0bffb8bcd8ccf2c2847cfff8f860e395f51615aee07631445dfb2c320378e04bf74afc85dbb676b617ad66738f5e0309980943269472aec68899a0e51706cdf670a58b185756c74f96322e71ba66c041b1f3538a06a0e0366f15afcc2d5d190c19d259870861fa3c3e82d78330846940813c402390eb816e91387900a5f01bf496715bb29fcdc4bc515bf8e1a0ca9aec01dd202cfbfd04adbd3c3754eca52ffac986ec2e260c3c071775b64dd2495bc0fa36c381cf46d1283b1a144b817cf4366621ef6cb1bb25f9a54b4b3565e80a5d17349ccf5393195dec3fd3b71734a36d578acafec412a68f2d70ab321408e498d570ee1ca3d35f27745bf1e8b5ebb8abf5d37062c914638cc086a7d6ef325006aae1a2a37cb2d8f700b542aab4d8fa5c29c5121310a8360b29a337483024e5e8380c3c59e04ff587faf0654800d23e0af1d7ebc6f284466078fdf2faf7b7de870957cd3bab613c7fc579e74c2f0f153ade6e441a4bb8c390ac3480df56e1137eff0510b96380f2e996f3b1427a10dff975b534d06ce9818e4fee152b38b5e875a03c31d17292c9d2908735ffab2ca2eb937eb514a2fc75077aff01202b231a84103b32e352a9ca5bdb25eec472c9ba52aedadcdedc4c31b12504678f528038c7d16aa4b996f4901b3696259646e7bc2ec1c9a2e0809c49eea381c4e455c8a55937d4b128ad167a51c04c235b2e413e34a738fceebb7ff9d9742cd7011c6451fb992c6beeb01300b5914dca6722705134ada3002073de9d41704da25540f13248bbfc2325c3a597f117e63cf4296f2ecd38bc086d8fd5645154537af247074c6ea2c21e6b6b514c3d1f2c5e7d42d1857e6e29f07e2efe20a29ae30d2cc4cffcd6c09ccf618fac1abcb893a2d4a2d8c47550206d0b6e0c9eeb8a367cb79adcb2176a8f408b6612d90252a40c708cf95c0b78a6f2468638b85f213b097ab4dda05ac5d9ca4de34ee8e0a618846dcbf9ec7d5cf531e98d1d0169ca9e59374fc9fc1ad5479178baee2909ac4e3dbf1d61db5018d9af8cf14ad3cd7cde3627235255aa45ca33a542ff04b610870f39ee52ae69039bdf1d69cad8191de866d754c0695e97e5f163162c818010654d3a81c05fad727502dd5114bd1b2bcb8265ea5a6142c005c9cd2a0dcf020bf39d0699d17c5584e5b51a9a3c619a646eff5638edf4bf785383006880e03c804da667ae9e67386e93dd84a428af70e31313a0240a4df982f6c184d50180d9d6c2ea2f97e19cec3d89a3690d616e5d8d2ee084bf0b04f6d2260f33f42547c4a3cfb1a2ebbf7b7f59d1e38b74e29be55fa1d643150e1b5cb03033cf5bc3ee1cf8e450218f519aaf5d2676014d46f0f29719baaa98c14c84bcf2311c10325e210a4103e70753e4bdd64333629147771bcac5cd76d955621fd027d1e11cce5188ba994ed7ccf124e4547bb9fdbe3ce8a1ae6d45d74ffb1c65985a02177fa440f57689533f49b818a837f0fddc6dcfd6f61e3c0bbd77be62ec7e896166e153c83479273e2cc5098960727be18259d2bdde7c99595f7427bdc5a3e155948aaa5abe56ea3f3deecd859e8d7208cd22381444201be96654bd21f4701e0e51e3a803a9f6b3fed7309eec0d780367bf9f468872c7726713492b2768ff05aed53eec31176e2cf6920bd1ce310e85286c839eec8c99ccca169e180718806b2b2ab1eb89b61a00ca9d9d37bf4e6110146a974f0237766c99b88acd7294b069c3a3da9b1b37ce687a3e315a7f21f644af6283f143c6348b6562e1700ec7a1d5e1a757954c40ef4d6d381d9b42b77cb890b4b7ff8173486a781896b9eeb6896c93fd778678a490d9fe0db96b0357f0b642f2bece8240b37adc0a2d7a21200d29090aad34b9eafc26e54da9f1ab988603d8c854e08b4342e6c192bf45d34731816bf35fafd5eee605ada653da91f0817026b85bc8500d5a4030c83c5b510868cf1972b2dcff80a559c040b6dff6c2c78451fd11b9f79eb1dfaf53c702db13bfc731b8920ee6a1de48c9f3a7b51fd12c89be9743d9f597905c6ffe15f343604828e13e48c4ebb08f5f1dbb609989e76da51cb2f28b30dbd172e7f26cba9a79ec015ac32dfa4a3223419bba437df4ccc15f8a6ed06e2099910c63e486841ddbd5bc2d303405bc34f8fd44b66069a5582350a81887dac1e36eb3f527693441d4fa9ae93b4d502d9a30cf7580550f41e0be6043b6460061fcac23ea96377baaee6bc4335c565b5ed639e0aac80eb184510d8676411c7e45d68367ca93bcff60271f504684c254ea54a895e4f377177edd21d8760c859060966b7a41ae45211f10c22606ebe806ee82afe475794595fc93147154ba0838532d28a250f6eb36611bec2218bdad338f74734e88ade2cc5d6ce96ee04e68e807caaadd473455f9d69c4a82eaba6f4ed7339735f54db588bfe50552f6a742d8a26ad98e973c138a89d1cf79c11aa65866452d691d0657beef7fc22becd12688e853bb983773b11dd8cec6faca4220c78c08affadf9fadd01c6afe89743ebfd863d7b8c17b80c7fa5c9f676ea69e372836cc26f0c040318b6aed6db6c14d4295e89f7c9bb8931c44320d97195921fff3c16ea4174d67f9f92ce9db5adc36070cbdd43264c49622e1812f40d6f5eb59f0ef2bb87e8ffafd4c7286a626a7db3518f9b5c163f65713dc0e68b4e39b6a4623287c01de5f85f842fa1cd1876c66619fdd7b87c2856a0745baa5bf54c627fbebe6901b3e16a81fc08c02c864ff47619507d1d289e874a8f783bba7c1e86817d12c4b48e974cb50132dcd4c9879db8f721e1944b0158449173460f2692d6288bd135445fa33677f5b7dbcb2a3040bcff4a90a8e27eee700bff24621943a783a3c00ef7668ee64020420c9c3a28b3810ccc6e370e9de4a87cb2574495645647607a1347926b5f2322342ce36b87f8c700a3cb8137fc73d258e000718d70c30f191c0a8c83a0999d2c4107e72bf872061c41659e85914ff644778a0ecaac57f1252274aa54af8301ff361d24611c38f1963d1dd59c980f21cb514730baf1300ff5bfe23dde1805ebb1a5d84045121ddd6db63a2045679e58e21e83a5224214a71791420dd17b2c7951c3131797c248f8ce0e58b90c1c90fef92dac51bc1134a5b0017fda6e81ea4c05c403322055d58e4c193e7dec41ba22b1e778512ab99d074d0a21a5c38961cf2e34fe92b9a8cd37976e5623956f7bd137c55fe23e61f6f97e81b8760bb9c885d26dbfa8dbdfe9ccd0e970a2f64e32b6c5444e8941a6cf150c7d454587b6cda78e13a2225415e9e4a633b3d0ce539e038271aedaeb7242afc0dfb58e55aa67716dfdc25654c4363868f778e338f65ee8e530d6012567f722d5ea458b0d06725a75ad5d758c607f78151db4e9485791d8ef5dda0d5e2b9e2b11d9675b81e97559af1cf71ae2346f1903a8e70b6f101e72246a361dfe5d5a6411c74d62bacc66c040b095deb217b04ffe19971a12892d5f898a3a6e7eb0f25cfd93110d31e11fde373cc82bb85e8525a5ce4b0f72beb0a7c64f56386244f0b943a0c5ec331df13a6bdc0d3ed0c3e89810c6c57eb25319b6340a47344f5526c6baf5c001ccbcbdac9ffabc8c6efa08bc3ac0fe1e3da55c1c7a0ad415fab6c47beec641a1e922491a5362366c9e9f96f9ffca16fc1d796b0eac4d5975e465d12e7018fa4aaad7317094cf125b4951a7ba4ae962e216235870f78a721155e91b4b8ecb6e4ca13068cb275d3746b7f726a5d259844856f1baf66a5e239efa3c6e6dc2b82489f201bd8ab2217a579bcf9830ddc9ae0324de3c8f1c6b94d8f7c3ea4e2740c9d1e484f149d2f3127c8fe8885e234a89b51a0cf0120105ef23878efd3dbfd6793e759b6d1e2d24fd6e1b888adff08aedda96ddeb39a7173c1dacee1e08236f43ab9c62e12930a99427ab8402256b314863752ce84128f374e83aab8cf03f1e999dc412d4a2159032629ff20c33f6bf470763a5806a0ce850e90ae9cb5f4951fa146be14342ff74982243daaa1927bfa30b51e89f0f317671ab39d74e26ec0e044268bac58834bdb4e1fa6011fe88098d82cb79bfb4e4977b522de267e345108521650bb984d7e52545ca5f968b1e4711054b50e32af92557d3aca8876e806482443c104a1681f3eea460ec6c87e851435c0fedf38b4fe6a46f6982531cdac916e0782552465c523ca5b04e4bb98a1ef77c87ae0ca87b6a4f3142f28737ef50115abb326299083e57505ea6852ce55598d0c8ee14c6490cd54be810380643833f922dd542cd67e31defa256825bb977d4126d7b00f53c90cb49638b8a9e43ec121568167e36acd6e3865ec91b94bf5ac1c86d455598fb13f7444a6c70ceb186f69bff09baea965ec83361a2cec8841a5c8db8e77bc453491a2f4f1bc489175446e0885c14b14b6227ef7de980fefc3cf4635bccde62ad8f82bc45c95969f76d467d0532e9813c5d3892dc0d89753202ec1a81ce6f22232318daac3785bdd4f2b19391636c2ed38fe912bef4af8a587bf820e2316202c1253c60fca72a339a32f94e85ac2c8148ad598cb1609b34ed1f8663a3839b49a65c9ea5998803aa026a42e5dfdab112a2deede3ce3536b94314dc4aa7631cf5ec6075b1329e8a80b2236177f415b091eb6de0d78b5639bc740826fe69d0111fb2e5b7a4ae009c8246beacf1d038fc090046b83157984dc58b087d45daedc1955fb61a19eb6b73645c15ccc5a33be70f68e447cefb8e1cd736c65098acccbfa23c75c5768ce4120e7b445e86ae7765e7e2be29adbf92d779d238ef2cf64e450e2bec229c06ea11f644ff571e7e1aec96234cbcac0366c066813674a8cc3eec10848afb337ba2693fab5a796e2df891445aecb663b4a731bd6d7529e8aec698cbad19ea0b247c1fd2ef6d67ed6930517d7bf72dd243d5508f638c0c0b3bd9f4d0bc3aa70b226dd7f3cb88a608b63670c0ddcba5788d59ca724107b8feac5a7a042ebf61e2520f212592a249147119f808722b986a143f8c1fe44b44e4305f4285214142219aa8fdff9735e5540ccc2b4fc1ec5dcd1038f7ed3391663c1d87ff86d056a98775dbe01b1027ea7f6dcf79a3a1858d173bddfcf9da945849890b4ec35c0cbd84262fabccbcfe99346177602200608847b25889172025b0f4246a404fa686a6affc711734739580d131e39c17712875083e7d153025e792bf48be691d4869cb3cb04ac44aa660174dbb461c8388dd6ad6a750322ccf2dd65b43fa1d60006708085fcb92fa79007ddb5418274c443fbdcf145a81b48974b4ae3934aec1465909c7b008401e80359bc2066064c7298434f38dc179f2d52015c615b224396925f2f99790b918d3c0cb95a963512eb5c50f0c23a07df2fb89f614e30c9cbd3ede876ebd3485409417d5e11c37da0e00283ee1d30207f12dfc7c75b2b30c8d76745e2d03dc5ed446ab8962481b86a8ea3595554a67f381ebdb6c41590575ecb8f7c51e8d6ca8d4e06fb07fbccc2c093d883b46d500815ba7c9111526845a6e19721070aa160669101261a581904a19f124e40691edae101e08078669c0783ff84de022dc8a4457c357e4d71c32f26d7ce02b969ec1a3f4adca5d8124795b5da395cca4433ab39a781929cbaa06f288d8db4d5551215f94f0503b774f20c488c2f37b5164c8db16fe5a067221afea6d126eee3143567287c133c87fa901a3b31ec242e39d0a0d600fe5e7792b583fac2fcc71a01a13c14e125ee107fbc1ff34bd377b0292b79b438907bf4cfab31581059aef6fa96d9c72c1351ba02e72bf4522b2540874e20a8b12e7b4326ac426d2c042c2946abf978685fc155c6b84965ea52e75c7bc8df641cf7dba8fcd04796571401bf9c73bfa49b673cd1c55465f16c8b8b89afd9190ed1ff82dddd14fe76999a86fcdabba3c18637168438ada2e64c44cd4e0cc2f5ab6ee651ac38324b7bea8f79939c9e9bafda57206ec569ad7a86ec2c5ed31dd2d4de2917df9db4fdcaed46d82321b461f954f40b0dc3d2d1f557b03f3d151b6f8c64bd0ed74f7cc785539125fd07605fb92e0a66a808190275486cea2a9e793de62b4141eb9d20386fd98d7e2fd8e76b4d62b2e612a03516c7b09c7f18d732955aa99b5d1ac3cc6a72403b5a30429082c4d7a2c34c1194ea4fc96d016b6eec3d156f806d707a49070575ce725a0e560f70bfba00d8da534bef7f14652040e1a40e673241c9567d249f6f5c52c82f76069fdb025a88769faab6e6db96f8cb79a13c57ec375f40c13a4cece2c98297ae51360590191ec826f4f63ce654cacc017756dbd51aec183603b75e081f71f73e6c6a9c86e486bcfbb4d9ecdca0a51e3b885c097580ffbcd1a6e03efb3e3905cc39d79a438d8f4ecc8b33217e9482ed9abb66322a51a6300a7f0034d4b773245a020f9ba350a53629edd16ecfa923504ea7c82e5eae92b7186c0b17ed2cc0bc4e2a37cbcc2ebf38b458fedc07cd9d9040981d0e107dfafc3e00106266cc1b398fed4afb038da170800bf165f15efb5328f745ad159525dee9173f3427711daaa933c1090a9da2bd9da470273b8b4482c3259d5d3dfaa052eb4caf47e51346cbc0697ad4c253bd15c5ee21352326b42c722e4d4c18c097b467d5013d1c13e236d1260f32982595569920fb78a2a1c0acff116dcfed62accbb31329d6d1718517968013e7bcb51686da4f60558d319773665fc6bc9d8ae616a386f5ecfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d307eb994785409820c858f2100dc162663312f582480ca25389e3c4a7d9be3468278d529f0b77dad513878eaa74e65b2d0cf2cf515a94cf1c7cccad0ac2aa75b28libopencv_aruco.so.409libopencv_calib3d.so.409libopencv_core.so.409libopencv_dnn.so.409libopencv_face.so.409libopencv_features2d.so.409libopencv_flann.so.409libopencv_gapi.so.409libopencv_highgui.so.409libopencv_imgcodecs.so.409libopencv_imgproc.so.409libopencv_ml.so.409libopencv_objdetect.so.409libopencv_optflow.so.409libopencv_photo.so.409libopencv_plot.so.409libopencv_shape.so.409libopencv_stitching.so.409libopencv_superres.so.409libopencv_tracking.so.409libopencv_video.so.409libopencv_videoio.so.409libopencv_videostab.so.409libopencv_ximgproc.so.409rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootopencv-4.9.0-150600.3.2.1.src.rpmcmake(OpenCV)opencv-developencv-devel(x86-64)opencv-qt5-develpkgconfig(opencv4)@    /usr/bin/pkg-configlibopencv409libopencv_aruco409libopencv_face409libopencv_gapi409libopencv_highgui409libopencv_imgcodecs409libopencv_objdetect409libopencv_optflow409libopencv_superres409libopencv_videoio409libopencv_videostab409libopencv_ximgproc409opencvpkgconfig(gl)pkgconfig(glu)pkgconfig(ice)pkgconfig(sm)pkgconfig(x11)pkgconfig(xext)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)4.9.04.9.04.9.04.9.04.9.04.9.04.9.04.9.04.9.04.9.04.9.04.9.04.9.03.0.4-14.6.0-14.0-15.2-14.14.3ed@e@e_@c@c@bbk@bQu@aaa)@a,@`B`%@_`@__]@_^ _>e^^n@^&^%@^O@]@]@]fl]e@]Z@]N]M`@]G@[@[ @[ @ZkZS]@Z[@Z @ZYYZ@YYdYjY5GY5GY*W@WV@WEV@V@V'@V@VяVVzV^@VBU(U@U@T,@axel.braun@gmx.decabelo@opensuse.orgstefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.dechristophe@krop.frstefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.dealarrosa@suse.comstefan.bruens@rwth-aachen.dedmueller@suse.comjengelh@inai.destefan.bruens@rwth-aachen.dealoisio@gmx.comstefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.dedmueller@suse.commliska@suse.czstefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.dedimstar@opensuse.orgstefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.demarius.kittler@suse.comjengelh@inai.dejbrielmaier@suse.dechristophe@krop.frchristophe@krop.frstefan.bruens@rwth-aachen.dechristophe@krop.frfabian@ritter-vogt.defvogt@suse.comschwab@suse.detchvatal@suse.comstefan.bruens@rwth-aachen.dempluskal@suse.comecsos@opensuse.orgecsos@opensuse.orgmpluskal@suse.commpluskal@suse.comkah0922@gmail.comstefan.bruens@rwth-aachen.detchvatal@suse.comtchvatal@suse.comstefan.bruens@rwth-aachen.deolaf@aepfle.dedimstar@opensuse.orgmartin.liska@suse.comtoddrme2178@gmail.comtoddrme2178@gmail.comtittiatcoke@gmail.comjoerg.lorenzen@ki.tng.dejoerg.lorenzen@ki.tng.deolaf@aepfle.dealarrosa@suse.comohering@suse.deolaf@aepfle.demlin@suse.comcoolo@suse.comcoolo@suse.comtittiatcoke@gmail.com- Add %{?sle15allpythons} and build python bindings for all configured versions (also for Tumbleweed)- update to 4.9.0, highlights below, for details check https://github.com/opencv/opencv/wiki/ChangeLog#version490 Highlights of this release: * Core Module: + Added cv::broadcast + Fixed several rounding issues on ARM platform + Added detection & dispatching of some modern NEON instructions (NEON_FP16, NEON_BF16) + Added optimization for LoongArch 128-bit vector, detection & dispatching of LoongArch * DNN module patches: + Experimental transformers support + ONNX Attention layer support + ONNX Einsum layer support + OpenVINO backend for INT8 models + ONNX Gather Elements layer + ONNX InstanceNorm layer + Better support of ONNX Expand layer with cv::broadcast + Improved DNN graph fusion with shared nodes and commutative operations + New fastGEMM implementation and several layers on top of it + Winograd fp16 optimizations on ARM + Tests and multiple fixes for Yolo family models support + New layers support and bug fixes in CUDA backend: GEMM, Gelu, Add + CANN backend: bug fix, support HardSwish, LayerNormalization and InstanceNormalization + LayerNormalization: support OpenVINO, OpenCL and CUDA backend. * G-API module: + Intel® OpenVINO™ DL inference backend: - Introduced "inferenence only" ("benchmark") mode in the OV2.0 backend. - Fixed model layout setting issue in the OV2.0 backend. - Fixed/relaxed various asserts in the OV2.0 backend. + Core and image processing functionality: - Fluid kernels were rewritten to new universal intrinsics. Thanks for this contribution! + Streaming and video functionality: - Introduced a QueueSource: an alternative way to manually push input frames to the G-API pipeline in the streaming mode. - Introduced VAS Object Tracker (OT) for the various video analytics scenarios. + Python bindings: - Exposed VAS OT in G-API Python bindings. + Other changes and fixes: - Updated ADE (the G-API's graph library) to the latest version. - Various code clean-ups and warning fixes. * Objdetect module: + Implemented own QR code decoder as replacement for QUIRC library + Bug fixes in QR code encoder version estimation + More accurate Aruco marker corner refinement with dynamic window + Fixed contour filtering in ArUco + QR code detection sample for Android + Multiple local bug fixes and documentation update for Aruco makers, Charuco boards and QR codes. * Video: + Google Summer of Code: added a new object tracking API TrackerVit for a vision transformer-based VitTrack. This work is done by LIU Pengyu. * VideoIO: + Videoio: Add raw encoded video stream encapsulation to cv::VideoWriter with CAP_FFMPEG + Fix GStreamer backend with manual pipelines. * Calibration module: + Multiple fixes and improvements chess board calibration rig detector. + calibrateCamera throws exception, if calibration system is underconstrained. + Fixed bug in findEssentialMat with USAC + Fixed out-of-image access in cv::cornerSubPix + Fixed crash in ap3p + Fixed stereoRectify image boundaries + Fixed "use after free" issue in essential_solver.cpp * Python Bindings: + Added type stub generation for missed types and manually wrapped types. + Added read-only flag handling for Numpy arrays. + Fixed exception handling and bindings for in module. + Improved error messages in Numpy array type handling. + Fixed constructors documentation in Python. * Platforms and hardware Support: + Experimental CUDA support as first class language in CMake + Added experimental support for Apple VisionOS platform + Add support Orbbec Gemini2 and Gemini2 XL camera + Fix fullscreen behavior on macOS * Other: + OpenCV Summer of Code: semi-automated refactoring across multiple pull requests by HAN Liutong made our CPU-optimized code compatible with SIMD with variable vector length (RISC-V RVV)- update to 4.8.1 * WebP security update for CVE-2023-4863 * Depthwise convolution 5x5 performance regression fix - update to 4.8.0, highlights below, for details check https://github.com/opencv/opencv/wiki/ChangeLog#version480 Highlights of this release: * DNN module patches: + TFLite models support, including int8 quantized models. + Enabled DNN module build without Protobuf dependency. + Improved layers => supported more models: - ONNX: Layer normalization, GELU and QLinearSoftmax. - Fixes in CANN backend: * support ONNX Split, Slice, Clip (Relu6) and Conv with auto_pad. * support ONNX Sub, PRelu, ConvTranspose. - Reduce Refactor for robustness and potential follow-up improvements. - Fixes for Segment Anything Model by Meta. - Fixes in nary element wise layer about broadcast: * Fixes in CPU. * and Fixes in CUDA backend. - Further increased DNN speed on ARM and X86 by improving convolution, covering 1D and 3D cases, supporting convolution+element-wise op fusion. - Added full FP16 computation branch on ARMv8 platform, 1.5x faster than FP32 (FP16 Winograd is still pending). - Vulkan backend refactor for better performance and robustness. It runs 4X faster than before. - Added API blobFromImageParam to build network inputs with pre-processings. - Modern OpenVINO support. * G-API module: + Intel® OpenVINO™ inference backend: - Streamlined preprocessing in OpenVINO Inference Engine (ie) API 1.0 backend. Note: this backend will be deprecated after OpenVINO removes the API 1.0 support in its subsequent releases. - Aligned OpenVINO IE API 1.0 backend with the latest OpenVINO 2023.0 (as some features were removed there). - Introduced a brand new OpenVINO API 2.0 backend. - Implemented the required inference operations for the OpenVINO API 2.0 backend. + Python bindings: - Exposed varions normalization options for ONNX RT backend in Python bindings. - Exposed Fluid kernels and kernel package manipulation functions (combine()) in Python. - Fixed issues in Stateful Python kernel state handling; also fixed various issues in Python tests. - Fixed issue with opaque kernel output information handling which broke Python custom kernels. + Samples: - Introduced a new Segmentation demo with desync() to enable slow-running networks in the real-time. - Updated stats calculation in the G-API-based pipeline modelling tool. + Other changes and fixes: - Fixed tolerance in Fluid resize tests to avoid issues on ARM. - Fluid backend: extended Merge3 kernel with more supported data types. - Fixed standalone mode compilation issues. * Objdetect module: + FaceDetectorYN upgrade for better performance, accuracy and facial landmarks support. + New QR code detection algorithm based on ArUco code. + Bar code detector and decoder moved from Contrib to main repository. + Introduced common API for all graphical codes like bar codes and QR codes. + Added flag for legacy pre-4.6.0 ChAruco boards support. + Multiple bug fixes and improvements in QR code detection and decoding pipelines. + Multiple bug fixes and improvements in ArUco based pipelines. * Calibration module: + USAC framework improvements. + Fixed stddev estimation in camera calibration pipelines. + Fixed incorrect pixel grid generation in icvGetRectangles that improves accuracy of getOptimalNewCameraMatrix, stereoRectify and some other calibration functions. Charuco board support in patterns generator, interactive calibration tool and calibration samples. * Image processing module: + Various fixes in line segments detector. + Fixed even input dimensions for INTER_NEAREST_EXACT in resize. + Optimise local cost computation in IntelligentScissorsMB::buildMap. + Keep inliers for linear remap with BORDER_TRANSPARENT + Fix distransform to work with large images. * Features2d module: + SIFT accuracy improvements. * Core module: + Added REDUCE_SUM2 option to cv::reduce. + Introduced cv::hasNonZero function. + Update IPP binaries update to version 20230330. + Improved RISC-V RVV vector extensions support. - Support RVV v0.11 intrinsics available in LLVM 16 and GCC 13 - Support build with T-Head RISC-V toolchain (RVV 0.7.1 and 1.0) + Several OpenCL vendor and version handling improvements. * Multimedia: + Added AVIF support through libavif. + Orbbec Femto Mega cameras support. + HEVC/H265 support in VideoWriter with MS Media Foundation backend. + Fixed FPS computation on some videos for FFmpeg backend. + Added support for VideoCapture CAP_PROP_AUTO_WB and CV_CAP_PROP_WHITE_BALANCE_BLUE_U for DShow backend. + Fixes OBS Virtual Camera capture. + CV_32S encoding support with tiff. * Python Bindings: + Python typing stubs. + Fix reference counting errors in registerNewType. + Fixed ChAruco and diamond boards detector bindings. + Added bindings to allow GpuMat and Stream objects to be initialized from memory initialized in other libraries + np.float16 support. + Python bindings for RotatedRect, CV_MAKETYPE, CV_8UC(n). * JavaScript bindings: + Added possibility for disabling inlining wasm in opencv.js + Extended JS bindings for Aruco, Charuco, QR codes and bar codes. * Other: + Several critical issue fixes in wechat_qrcode module (opencv_contrib)- update to 4.7.0, highlights below, for details check https://github.com/opencv/opencv/wiki/ChangeLog#version470 Highlights of this release: * DNN: + New ONNX layers: Scatter and ScatterND, Tile, ReduceL1, ReduceMin and more. + Signinficant performance optimization for convolutions. Winograd algoritm implementation. + Element-wise operation (add, sub, mul, div, ...): Broadcasting. + OpenVino 2022.1 support. + CANN backend support. * Algorithms: + ArUco markers and April tags support including ChAruco and diamond boards detection and calibration. + QR code detection and decoding quality imrovement. Alignment markers support. Benchmark for QR codes: link + Nanotrack v2 tracker based on neural networks. + Stackblur algoruthm implementation. * Multimedia: + FFmpeg 5.x support. + CUDA 12.0 support. Hardware accelerated video codecs support on NVIDIA platforms with modern Video Codec SDK (NVCUVID and NVENCODEAPI). + CV_16UC1 read/write video support with FFmpeg. + Orientation meta support on Mac with native media API. + New iterator-based API for multi-page image formats. + libSPNG support for PNG format. + SIMD acceleration for self-built libJPEG-Turbo + H264/H265 support on Android. Multiple fixes for video decoder, endcoder and camera memory layout. * G-API + Exposed all core APIs to Python, including stateful kernels. * Optimization: + New universal intrinsics backend for scalable vector instructions. The first scalable implementation for RISC-V RVV 1.0. + DNN module patches: - Improved layers / supported more models: * Scatter and ScatterND #22529, Tile #22809 * Fixes in Slice (support negative step #22898) * Support some reduce layers of ONNX #21601 - Added CANN backend support #22634. Link to the manual: https://github.com/opencv/opencv/wiki/Huawei-CANN-Backend. - Added bacthed NMS for multi-class object detection #22857 - Accelerating convolution, especially for ARM CPU. - Winograd's convolution optimization + And many other contributions: + Added n-dimensional flip to core #22898 + Add StackBlur for imgproc #20379 - Removed upstream opencv-ffmpeg5.patch- Add upstream change to fix include issue with FFmpeg 5: * opencv-ffmpeg5.patch- update to 4.6.0, highlights below, for details check https://github.com/opencv/opencv/wiki/ChangeLog#version460 * OpenCV project infrastructure migrating on GitHub Actions workflows for CI and release purposes * Added support for GCC 12, Clang 15 * Added support for FFmpeg 5.0 * DNN module patches: + Improved layers / activations / supported more models: - LSTM (+CUDA), resize (+ONNX13), Sign, Shrink, Reciprocal, depth2space, space2depth - fixes in Reduce, Slice, Expand + Disabled floating-point denormals processing #21521 + Changed layer names in ONNX importer to support "output" entities properly + Added TIM-VX NPU backend support: https://github.com/opencv/opencv/wiki/TIM-VX-Backend-For-Running-OpenCV-On-NPU + Added Softmax parameter to ClassificationModel + Added audio speech recognition sample (C++) #21458 + Intel® Inference Engine backend (OpenVINO): - added initial support for OpenVINO 2022.1 release - removed support of legacy API (dropped since 2020.3) * G-API module: + G-API framework: - Introduced a Grayscale image format support for cv::MediaFrame: #21511; - Enabeled .reshape() support in the CPU backend: #21669; - Fixed possible hang in streaming execution mode with constant inputs: #21567; - Introduced proper error/exception propagation in the asynchronous streaming execution mode: #21660; - Fixed new stream event handling: #21731. + Fluid backend: - Fixed horizontal pass in the Resize kernel, fixed Valgrind issues: #21144; - Extended Resize kernel with F32 version: #21678, added AVX: #21728. - Enabled dynamic dispatch for Split4 kernel: #21520; - Enabled dynamic dispatch for Merge3 kernel: #21529; - Added a SIMD version for DivC kernel: #21474; - Added a SIMD version for DivRC kernel: #21530; - Enabled dynamic dispatch for Add kernel: #21686; - Enabled dynamic dispatch for Sub kernel: #21746; - Added a SIMD version for ConvertTo kernel: #21777; - Fixed kernel matrix size for Sobel kernel: #21613. + Intel® OpenVINO™ inference backend: - Fixed NV12 format support for remote memory when OpenVINO remote context is used: #21424. - Implemented correct error handling in the backend: #21579. - Fixed ngraph warnings #21362. + OpenCV AI Kit backend: - Introduced a new backend to program OpenCV AI Kit boards via G-API. Currently the backend is in experimental state, but allows to build Camera+NN pipeline and supports heterogeneity (mixing with host-side code): #20785, #21504. + Media integration: - Enabled GPU inference with oneVPL and DirectX11 on Windows in Intel OpenVINO inference backend: #21232, #21618, #21658, #21687, [#21688]. Now GPU textures decoded by oneVPL decoder can be preprocessed and inferred on GPU with no extra host processing. - Enabled oneVPL support on Linux: #21883. - Extended GStreamer pipeline source with Grayscale image format support: #21560. + Python bindings: - Exposed GStreamer pipeline source in Python bindings: #20832. - Fixed Python bindings for CudaBufferPool, cudacodec and cudastereo modules in OpenCV Contrib. + Samples: - Introduced a pipeline modelling tool for cascaded model benchmarking: #21477, #21636, #21719. The tool supports a declarative YAML-based config to describe pipelines with simulated pre-/post-processing. The tool collects and reports latency and throughput information for the modelled pipeline. + Other changes and fixes: - Moved GKernelPackage into cv:: namespace by default, its cv::gapi:: alias remain for compatibility: #21318; - Moved Resize kernel from core to imgproc kernel packages for CPU, OpenCL, and Fluid backends: #21157. Also moved tests appropriately: #21475; - Avoided sporadic test failures in DivC: #21626; - Fixed 1D Mat handling in the framework: #21782; - Reduced the number of G-API generated accuracy tests: #21909. - Drop upstream patches: * 0001-highgui-Fix-unresolved-OpenGL-functions-for-Qt-backe.patch * videoio_initial_FFmpeg_5_0_support.patch * videoio_ffmpeg_avoid_memory_leaks.patch- Add upstream patches for FFmpeg 5.0 support, add * videoio_initial_FFmpeg_5_0_support.patch * videoio_ffmpeg_avoid_memory_leaks.patch- Restore memoryperjob constraint, avoid being scheduled on a 16 core system and use less than half of it. - Adjust %limit_build to 1800, to avoid recurrent build failures on aarch64. (People should not care for their pet architecture only, but also carefully check if they break others.) - Add missing libopencv_aruco dependency in devel package.- Remove the memoryperjob constraint which doesn't work as one would expect and breaks ppc64 builds. - Use %limit_memory -m 1700 to set the number of concurrent jobs to a sane value and fix OOM errors when building in workers with many cores. - Decrease the disk constraint to 9G which seems to be enough- update to 4.5.5, highlights below, for details check https://github.com/opencv/opencv/wiki/ChangeLog#version455 * Audio support as part of VideoCapture API: GStreamer #21264 * Updated SOVERSION handling rules: #21178 * DNN module patches: + Added tests to cover ONNX conformance test suite: #21088 + Improved layers / activations / supported more models + Upgraded builtin protobuf from 3.5.2 to 3.19.1 + More optimizations for RISC-V platform + Intel® Inference Engine backend ( OpenVINO™ ): added support for OpenVINO 2021.4.2 LTS release * G-API module: + G-API framework: - Fixed issue with accessing 1D data from cv::RMat: #21103 - Restricted passing the G-API types to graph inputs/outputs for execution: #21041 - Various fixes in G-API Doxygen reference: #20924 - Renamed various internal structures for consistency #20836 #21040 + Fluid backend: - Introduced a better vectorized version of Resize: #20664. - Added vectorized version of Multiply kernel: #21024 - Added vectorized version of Divide kernel: #20914 - Added vectorized version of AddC kernel: #21119 - Added vectorized version of SubC kernel: #21158 - Added vectorized version of MulC kernel: #21177 - Added vectorized version of SubRC kernel: #21231 - Enabled SIMD dispatching for AbsDiffC: #21204 + OpenCL backend: - Fixed sporadic test failures in Multiply kernel running on GPU: #21205 + Intel® OpenVINO™ inference backend: - Extended ie::Params to support static batch size as input to inference: #20856 - Enabled 2D input tensor support in IE backend: #20925 - Fixed various issues with imported (pre-compiled) networks: #20918 + Media integration: - Introduced a GStreamer-based pipeline source for G-API: #20709 - Completed the integration of Intel® oneVPL as a pipeline source for G-API #20773 with device selection #20738, asynchronous execution #20901, intial demux support #21022, and GPU-side memory allocation via DirectX 11 #21049. + Samples: - Replaced custom kernels with now-standard G-API operations in several samples #21106 - Moved API snippets from G-API samples to a dedicated place #20857 + Other changes and fixes: - Fixed various static analysis issues for OpenVINO 2021.4 release: #21083 and #21212 - Fixed various build warnings introduced after OpenVINO update: #20937 - Continued clean-up in the G-API test suite on GTest macros [#20922] and test data #20995 - Added custom accuracy comparison functions to Fluid performance tests: #21150. * And many other contributions: + Added QRcode encoder: #17889 + GSoC - OpenCV.js: Accelerate OpenCV.js DNN via WebNN: #20406 + Add conventional Bayer naming: #20970 + (opencv_contrib) Add Radon transform function to ximgproc: #3090 + (opencv_contrib) New superpixel algorithm (F-DBSCAN): #3093 + Created Stitching Tool: #21020 + Improve CCL with new algorithms and tests: #21275 + (opencv_contrib) Update ArUco tutorial: #3126 - Adjust memory constraints (mostly required for aarch64 on Leap) - Add 0001-highgui-Fix-unresolved-OpenGL-functions-for-Qt-backe.patch- update to 4.5.4: * 8-bit quantization in the dnn module * Improved Julia bindings * Speech recognition sample * dnn module optimizations for RISC-V * Tutorial about universal intrinsics and parallel_for usage * Improvements in the dnn module: - New layers and models support - Some existing layers have been fixed - Soft-NMS implementation - Supported OpenVINO 2021.4.1 LTS release- Remove dependency on IlmBase, opencv never uses this directly.- update to 4.5.2, highlights below, for details check https://github.com/opencv/opencv/wiki/ChangeLog#version452 * core: added support for parallel backends. * imgproc: added IntelligentScissors implementation (JS demo). * videoio: improved hardware-accelerated video de-/encoding tasks. * DNN module: + Improved debugging of TensorFlow parsing errors: #19220 + Improved layers / activations / supported more models: - optimized: NMS processing, DetectionOutput - fixed: Div with constant, MatMul, Reshape (TensorFlow behaviour) - added support: Mish ONNX subgraph, NormalizeL2 (ONNX), LeakyReLU (TensorFlow), TanH + SAM (Darknet), Exp + Intel® Inference Engine backend ( OpenVINO™ ): added support for OpenVINO 2021.3 release * G-API module: + Python support: - Introduced a new Python backend - now G-API can run custom kernels written in Python as part of the pipeline: #19351 - Extended Inference support in the G-API bindings: #19318 - Added more graph data types in the G-API bindings: #19319 + Inference support: - Introduced dynamic input / CNN reshape functionality in the OpenVINO inference backend #18240 - Introduced asynchronous execution support in the OpenVINO inference backend, now it can run in multiple parallel requests to increase stream density/throughput: #19487, #19425 - Extended supported data types with INT64/INT32 in ONNX inference backend and with INT32 in the OpenVINO inference backend #19792 - Introduced cv::GFrame / cv::MediaFrame and constant support in the ONNX backend: #19070 + Media support: - Introduced cv::GFrame / cv::MediaFrame support in the drawing/rendering interface: #19516 - Introduced multi-stream input support in Streaming mode and frame synchronization policies to support cases like Stereo: #19731 - Added Y and UV operations to access NV12 data of cv::GFrame at the graph level; conversions are done on-the-fly if the media format is different: #19325 + Operations and kernels: - Added performance tests for new operations (MorphologyEx, BoundingRect, FitLine, FindContours, KMeans, Kalman, BackgroundSubtractor) - Fixed RMat input support in the PlaidML backend: #19782 - Added ARM NEON optimizations for Fluid AbsDiffC, AddWeighted, and bitwise operations: #18466, #19233 - Other various static analysis and warning fixes + Documentation: - [GSoC] Added TF/PyTorch classification conversion: #17604 - [GSoC] Added TF/PyTorch segmentation conversion: #17801 - [GSoC] Added TF/PyTorch detection model conversion: #18237 - Updated documentation to address Wide Universal Intrinsics (WUI) SIMD API: #18952 + And many other great contributions from OpenCV community: - core: cuda::Stream constructor with stream flags: #19286 - highgui: pollKey() implementation for w32 backend: #19411 - imgcodecs: Added Exif parsing for PNG: #19439 - imgcodecs: OpenEXR compression options: #19540 - imgproc: connectedComponents optimizations: (Spaghetti Labeling): #19631 - videoio: Android NDK camera support #19597 - (contrib) WeChat QRCode module open source: #2821 - (contrib) Implemented cv::cuda::inRange(): #2803 - (contrib) Added algorithms from Edge Drawing Library: #2313 - (contrib) Added Python bindings for Viz module: #2882 - Add libva build dependency for HW accelerated videoio - Slight bump for memory constraints- Enable aruco module (recognize markers to detect camera pose)- update to 4.5.1, highlights below, for details check https://github.com/opencv/opencv/wiki/ChangeLog#version451 * Continued merging of GSoC 2020 results: + Develop OpenCV.js DNN modules for promising web use cases together with their tutorials + OpenCV.js: WASM SIMD optimization 2.0 + High Level API and Samples for Scene Text Detection and Recognition + SIFT: SIMD optimization of GaussianBlur 16U * DNN module: + Improved layers / activations / supported more models: - optimized: 1D convolution, 1D pool - fixed: Resize, ReduceMean, Gather with multiple outputs, importing of Faster RCNN ONNX model - added support: INT32 ONNX tensors + Intel® Inference Engine backend (OpenVINO): - added support for OpenVINO 2021.2 release - added preview support for HDDL + Fixes and optimizations in DNN CUDA backend (thanks to @YashasSamaga) * G-API Framework: + Introduced serialization for cv::RMat, including serialization for user-defined memory adapters + Introduced desync, a new Operation for in-graph asynchronous execution - to allow different parts of the graph run with a different latency + Introduced a notion of "in-graph metadata", now various media-related information can be accessed in graph directly (currently only limited to timestamps and frame IDs) + Introduced a new generic task-based executor, based on Threading Building Blocks (TBB) + Extended infer<>() API to accept a new cv::GFrame data structure to allow handling of various media formats without changes in the graph structure + Made copy() an intrinsic where real copy may not happen (optimized out) based on graph structure, extended it to support cv::GFrame + Various fixes, including addressig static analysis, documentation, and test issues * G-API Operations: + Introduced new operations morphologyEx, boundingRect, fitLine, kmeans, Background Subtractor, Kalman filter * G-API Intel® Inference Engine backend (OpenVINO): + Extended cv::gapi::ie::Params<> to import CNN networks (e.g. pre-compiled ones) instead of passing .XML and .BIN files; also enabled configuring Inference Engine plugins via this structure + Added a new overload to infer<>() to run inference over a single region of interest + Added support for cv::MediaFrame input data type (projected from cv::GFrame) and handling for NV12 input image format * G-API Python bindings: + Exposed G-API's Inference and Streaming APIs in the OpenCV Python bindings + Added initial Python support for cv::GArray data structure * Significant progress on RISC-V port. - Updated constraints, bump memory to 5 GB - Cleaned up spec file- Split library package, move all libraries with external dependencies (Qt5, ffmpeg, gstreamer) into separate packages - Move haar and LBP cascades into separate package, pull in from objdetect and face (detect) libraries.- update to 4.5.0, see https://github.com/opencv/opencv/wiki/ChangeLog#version450 for details, highlights: * OpenCV license has been changed to Apache 2 (OpenCV 3.x will keep using BSD) * GSoC is over, all projects were success and most of them have already been merged. Optimizations for RISC-V, bindings for Julia language, real-time single object tracking, improved SIFT and others * OpenJPEG is now used by default for JPEG2000 * Supported multiple OpenCL contexts * Improvements in dnn module: + Support latest OpenVINO 2021.1 release + Tengine lite support for inference on ARM + Many fixes and optimizations in CUDA backend * Added Python bindings for G-API module * Multiple fixes and improvements in flann module * Added Robot-World/Hand-Eye calibration function- update to 4.4.0: * SIFT (Scale-Invariant Feature Transform) algorithm has been moved to the main repository (patent on SIFT is expired) * DNN module: * State-of-art Yolo v4 Detector: #17148. * onnx: Add support for Resnet_backbone * EfficientDet models * add text recognition sample / demo * FlowNet2 optical flow * Intel Inference Engine backend * added support for OpenVINO 2020.3 LTS / 2020.4 releases * support of NN Builder API is planned for removal in the next release * Many fixes and optimizations in CUDA backend * Obj-C / Swift bindings: #17165 * Julia bindings as part of ongoing GSoC project * BIMEF: A Bio-Inspired Multi-Exposure Fusion Framework for Low-light Image Enhancement * Enable Otsu thresholding for CV_16UC1 images * Add Stroke Width Transform algorithm for Text Detection * Planned migration on Apache 2 license for next releases - remove opencv-includedir.patch (obsolete)- Use memoryperjob constraint instead of %limit_build macro.- Update to 4.3.0 * DNN module: + Improved layers / activations / supported more models: - ONNX: LSTM, Broadcasting, Algebra over constants, Slice with multiple inputs - DarkNet: grouped convolutions, sigmoid, swish, scale_channels - MobileNet-SSD v3: #16760 + New samples / demos: - Clothes parts segmentation and CP-VTON - DaSiamRPN tracker Intel® Inference Engine backend (OpenVINO™): - added support for custom layers through nGraph OpenVINO API: #16628 - nGraph OpenVINO API is used by default: #16746 + Many fixes and optimizations in CUDA backend (thanks to @YashasSamaga) + OPEN AI LAB team submitted the patch that accelerates OpenCV DNN on ARM using their Tengine library * G-API module: + Introduced a new graph-level data type GOpaque. This type can be used to pass arbitrary user data types between G-API nodes in the graph (supported for CPU/OpenCV backend only). + Introduced a way to declare G-API CPU (OpenCV) kernels in-place + Added a new sample "Privacy masking camera", combining Deep Learning with traditional Image Processing (link) + Added more operations in the default library: WarpAffine, WarpPerspective, NV12toGray. * Performance improvements: + IPP-ICV library with CPU optimizations has been updated to version 2020.0.0 Gold + SIMD intrinsics: integral, resize, (opencv_contrib) RLOF implementation #2476 * And many other great contributions from OpenCV community: + (opencv_contrib) Computer Vision based Alpha Matting (GSoC 2019) #2306 + calib3d: findChessboardCornersSB improvements: #16625 + calib3d: updated documentation for RT matrices: #16860 + core: improved getNumberOfCPUs(): #16268 + imgproc: new algorithm HOUGH_GRADIENT_ALT is added to HoughCircles() function #16561. It has much better recall and precision + imgcodecs: added initial support for OpenJPEG library (version 2+): #16494 + highgui(Qt): added Copy to clipboard: #16677 + dnn: TensorFlow, Darknet and ONNX importers improvements by @ashishkrshrivastava + (opencv_contrib) added rapid module for silhouette based 3D object tracking: #2356 + (opencv_contrib) SIFT detector is enabled by default due patents expiration (without requirement of NONFREE build option) + help materials: OpenCV Cheat Sheet in Python: #4875 * Changes that can potentially break compatibility: + image filtering functions throws exception on empty input (voting results) - Packaging changes: * Stop mangling CMake diagnostic output, no dependency versions end up in the packages anyway, drop opencv-build-compare.patch * Set empty OPENCV_DOWNLOAD_TRIES_LIST, skip downloads even when network is available during builds (e.g. local build). * Drop upstream GLES patches: + 0001-Do-not-include-glx.h-when-using-GLES.patch + opencv-gles.patch- Disable Python 2 bindings for Tumbleweed.- Drop Jasper (i.e jpeg2k) support (boo#1130404, boo#1144260) JasPer is unmaintained, CVEs are not being addressed (some issues received patches submitted to the upstream github project, but are not being merged, other CVEs are considered unfixable). openSUSE follows other distros in dropping JasPer now (much later than most others, incl. Debian).- Add webp build dependency to use system libwebp instead of bundled one. - Enable dispatch of AVX512 optimized code.- Update to 4.2.0 * DNN module: + Integrated GSoC project with CUDA backend: #14827 + Intel® Inference Engine backend ( OpenVINO™ ): - support for nGraph OpenVINO API (preview / experimental): #15537 * G-API module: + Enabled in-graph inference: #15090. Now G-API can express more complex hybrid CV/DL algorithms; - Intel® Inference Engine backend is the only available now, support for DNN module will be added in the future releases. + Extended execution model with streaming support: #15216. Decoding, image processing, inference, and post-processing are now pipelined efficiently when processing a video stream with G-API. + Added tutorials covering these new features: Face analytics pipeline and a sample Face beautification algorithm. * Performance improvements: + SIMD intrinsics: StereoBM/StereoSGBM algorithms, resize, integral, flip, accumulate with mask, HOG, demosaic, moments + Muti-threading: pyrDown * And many other great patches from OpenCV community: + VideoCapture: video stream extraction (demuxing) through FFmpeg backend. + VideoCapture: waitAny() API for camera input multiplexing (Video4Linux through poll() calls). + (opencv_contrib) new algorithm Rapid Frequency Selective Reconstruction (FSR): #2296 + tutorial. + (opencv_contrib) RIC method for sparse match interpolation: #2367. + (opencv_contrib) LOGOS features matching strategy: #2383. * Breaking changes: + Disabled constructors for legacy C API structures. + Implementation of Thread Local Storage (TLS) has been improved to release data from terminated threads. API has been changed. + Don't define unsafe CV_XADD implementation by default. + Python conversion rules of passed arguments will be updated in next releases: #15915.- Limit build parallelism with limit_build, some ARM and PPC workers have a high SMP/memory ratio and run out of memory otherwise. - Apply memory constraints (3GB) to all architectures, avoid being scheduled on very weak workers.- Update to 4.1.2 * DNN module: + Intel Inference Engine backend (OpenVINO): - 2019R3 has been supported - Support modern IE Core API - New approach for custom layers management. Now all the OpenCV layers fallbacks are implemented as IE custom layers which helps to improve efficiency due less graph partitioning. - High-level API which introduces dnn::Model class and set of task-specific classes such dnn::ClassificationModel, dnn::DetectionModel, dnn::SegmentationModel. It supports automatic pre- and post-processing for deep learning networks. * Performance improvements and platforms support: + MSA SIMD implementation has been contributed for MIPS platforms: https://github.com/opencv/opencv/pull/15422 + OpenCV.js optimization (threading and SIMD as part of GSoC project): https://github.com/opencv/opencv/pull/15371 + More optimizations using SIMD intrinsics: dotProd, FAST corners, HOG, LK pyramid (VSX), norm, warpPerspective, etc + Fixed detection of Cascade Lake CPUs * And many other great patches from OpenCV community: + GUI: support topmost window mode (Win32/COCOA): https://github.com/opencv/opencv/pull/14872 + Java: fix Mat.toString() for higher dimensions: https://github.com/opencv/opencv/pull/15181 + Implementation of colormap "Turbo" https://github.com/opencv/opencv/pull/15388 + QR-Code detection accuracy improvement: https://github.com/opencv/opencv/pull/15356 + GSoC: Add learning-based super-resolution module: https://github.com/opencv/opencv_contrib/pull/2229 and https://github.com/opencv/opencv_contrib/pull/2231 + Detection accuracy improvement of the white marker aruco corners: https://github.com/opencv/opencv_contrib/pull/2236 + Added pattern generator tool for aruco: https://github.com/opencv/opencv_contrib/pull/2250 + and special thanks to @sturkmen72 for improvind and cleaning up code of samples/tutorials * Breaking changes: + fixed values thresholding accuracy in calcHist() * Security fixes: CVE-2019-15939 (boo#1149742). - Enable Graph API (G-API) - Minor spec file cleanup- Include pkg-config file in opencv-devel package * Add opencv-includedir.patch- Avoid use of ®/™ signs in specfiles as per guidelines.- Disable LTO on ppc64le for now, as it fails to build when enabled (boo#1146096).- Increase the disk space needed to build opencv.- Update to 4.1.1 * DNN module: * 3D convolution networks initial support * A lot of improvements for ONNX and TenforFlow importers * Performance improvements * Added IPPE method for planar pose estimation in solvePnP * Added solvePnPRefineLM and solvePnPRefineVVS * Security fixes: CVE-2019-14491 (boo#1144352), CVE-2019-14492 (boo#1144348). - Check https://github.com/opencv/opencv/wiki/ChangeLog#version411 for the complete list of changes. - Drop fix_processor_detection_for_32bit_on_64bit.patch. Fixed upstream - Drop 0001-Handle-absolute-OPENCV_INCLUDE_INSTALL_PATH-correctl.patch Fixed upstream - Refresh 0001-Do-not-include-glx.h-when-using-GLES.patch and opencv-build-compare.patch.- Update to version 4.1.0 * DNN module: + Reduced peak memory consumption for some models up to 30%. + Inference Engine - Inference Engine 2018R3 is now a minimal supported version of IE. - Myriad X (Intel® Neural Compute Stick 2) is now supported and tested. - Automatic IR network reshaping for different inputs. - Improved samples to work with models from OpenVINO Open Model Zoo + New networks from TensorFlow Object Detection API: Faster-RCNNs, SSDs and Mask-RCNN with dilated convolutions, FPN SSD * Performance improvements: + More optimization using AVX2 instruction set. + Automatic runtime dispatching is available for large set of functions from core and imgproc modules. * Other improvements: + Matplotlib Perceptually Uniform Sequential colormaps + Add keypoints matching visualization for real-time pose estimation tutorial + Add Hand-Eye calibration methods + Java: improved support for multidimensional arrays (Mat) + Dynamically loaded videoio backends (FFmpeg, GStreamer) + opencv_contrib: Robust local optical flow (RLOF) implementations + opencv_contrib: Implementation of Quasi Dense Stereo algorithm + opencv_contrib: New module: Image Quality Analysis (IQA) API + opencv_contrib: BRISQUE No Reference Image Quality Assessment (IQA) API Check https://github.com/opencv/opencv/wiki/ChangeLog#version410 - Update to version 4.0.0 * A lot of C API from OpenCV 1.x has been removed. The affected modules are objdetect, photo, video, videoio, imgcodecs, calib3d. * Persistence (storing and loading structured data to/from XML, YAML or JSON) in the core module has been completely reimplemented. * OpenCV is now C++11 library and requires C++11-compliant compiler. Thanks to the extended C++11 standard library, we could get rid of hand-crafted cv::String and cv::Ptr. Now cv::String == std::string and cv::Ptr is a thin wrapper on top of std::shared_ptr. Also, on Linux/BSD for cv::parallel_for_ we now use std::thread's instead of pthreads. * DNN improvements * Completely new module opencv_gapi has been added. It is the engine for very efficient image processing, based on lazy evaluation and on-fly construction. * Performance improvements A few hundreds of basic kernels in OpenCV have been rewritten using so-called "wide universal intrinsics". Those intrinsics map to SSE2, SSE4, AVX2, NEON or VSX intrinsics, depending on the target platform and the compile flags. * QR code detector and decoder have been added to opencv/objdetect module. * The popular Kinect Fusion algorithm has been implemented, optimized for CPU and GPU (OpenCL), and integrated into opencv_contrib/rgbd module. * Very efficient and yet high-quality DIS dense optical flow algorithm has been moved from opencv_contrib to opencv, video module. See the example. * The slower TV L1 optical flow algorithm has been moved to opencv_contrib. Check https://github.com/opencv/opencv/wiki/ChangeLog#version400 - Drop obsolete opencv-lib_suffix.patch - Add 0001-Handle-absolute-OPENCV_INCLUDE_INSTALL_PATH-correctl.patch - As this is a major version upgrade, the old 3.4.x package is still available as opencv3- Update to 3.4.3 * Compatibility fixes with python 3.7 * Added a new computational target DNN_TARGET_OPENCL_FP16 * Extended support of Intel's Inference Engine backend * Enabled import of Intel's OpenVINO pre-trained networks from intermediate representation (IR). * tutorials improvements Check https://github.com/opencv/opencv/wiki/ChangeLog#version343 for the complete changelog. - Drop fix-build-i386-nosse.patch, build-workaround-issues-with-c.patch (fixed upstream) - Refresh patches- Add patch to fix use of headers from C: * build-workaround-issues-with-c.patch- Update to 3.4.1: * Added support for quantized TensorFlow networks * OpenCV is now able to use Intel DL inference engine as DNN acceleration backend * Added AVX-512 acceleration to the performance-critical kernels * Fix cmake mapping of RelWithDebInfo (boo#1154091). * For more information, read https://github.com/opencv/opencv/wiki/ChangeLog#version341 - Update contrib modules to 3.4.1: * No changelog available - Change mechanism the contrib modules are built - Include LICENSE of contrib tarball as well - Build with python3 on >= 15 - Add patch to fix build on i386 without SSE: * fix-build-i386-nosse.patch - Refresh patches: * fix_processor_detection_for_32bit_on_64bit.patch * opencv-build-compare.patch - Mention all libs explicitly - Rebase 3.4.0 update from i@marguerite.su - update to 3.4.0 * Added faster R-CNN support * Javascript bindings have been extended to cover DNN module * DNN has been further accelerated for iGPU using OpenCL * On-disk caching of precompiled OpenCL kernels has been finally implemented * possible to load and run pre-compiled OpenCL kernels via T-API * Bit-exact 8-bit and 16-bit resize has been implemented (currently supported only bilinear interpolation) - update face module to 3.4.0 - add opencv-lib_suffix.patch, remove LIB_SUFFIX from OPENCV_LIB_INSTALL_PATH, as CMAKE_INSTALL _LIBDIR is arch dependent.- Add option to build without openblas- Add conditionals for python2 and python3 to allow us enabling only desired python variants when needed - Do not depend on sphinx as py2 and py3 seem to collide there- Readd opencv-gles.patch, it is *not* included upstream; otherwise build breaks on all GLES Qt5 platforms (armv6l, armv7l, aarch64) - add fix_processor_detection_for_32bit_on_64bit.patch - Correctly set optimizations and dynamic dispatch on ARM, use OpenCV 3.3 syntax on x86.- Update licensing information- change requires of python-numpy-devel to build in Leap and to not break factory in future- fix build error/unresolvable for Leap 42.2 and 42.3- Update to version 3.3.1: * Lots of various bugfixes - Update source url- Rename python subpackage to python2 - Do not explicitly require python-base for python subpackages- Update to 3.3 - Dropped obsolete patches * opencv-gcc6-fix-pch-support-PR8345.patch * opencv-gles.patch - Updated opencv-build-compare.patch- Add 0001-Do-not-include-glx.h-when-using-GLES.patch Fix build for 32bit ARM, including both GLES and desktop GL headers causes incompatible pointer type errors- Add conditional for the qt5/qt4 integration * This is used only for gui tools, library is not affected - Add provides/obsoletes for the qt5 packages to allow migration - Drop patch opencv-qt5-sobump.diff * Used only by the obsoleted qt5 variant- Cleanup a bit with spec-cleaner - Use %cmake macros - Remove the conditions that are not really needed - Add tests conditional disabled by default * Many tests fail and there are missing testdata - Switch to pkgconfig style dependencies- Update to OpenCV 3.2.0 - Results from 11 GSoC 2016 projects have been submitted to the library: + sinusoidal patterns for structured light and phase unwrapping module [Ambroise Moreau (Delia Passalacqua)] + DIS optical flow (excellent dense optical flow algorithm that is both significantly better and significantly faster than Farneback’s algorithm – our baseline), and learning-based color constancy algorithms implementation [Alexander Bokov (Maksim Shabunin)] + CNN based tracking algorithm (GOTURN) [Tyan Vladimir (Antonella Cascitelli)] + PCAFlow and Global Patch Collider algorithms implementation [Vladislav Samsonov (Ethan Rublee)] + Multi-language OpenCV Tutorials in Python, C++ and Java [João Cartucho (Vincent Rabaud)] + New camera model and parallel processing for stitching pipeline [Jiri Horner (Bo Li)] + Optimizations and improvements of dnn module [Vitaliy Lyudvichenko (Anatoly Baksheev)] + Base64 and JSON support for file storage. Use names like “myfilestorage.xml?base64” when writing file storage to store big chunks of numerical data in base64-encoded form. [Iric Wu (Vadim Pisarevsky)] + tiny_dnn improvements and integration [Edgar Riba (Manuele Tamburrano, Stefano Fabri)] + Quantization and semantic saliency detection with tiny_dnn [Yida Wang (Manuele Tamburrano, Stefano Fabri)] + Word-spotting CNN based algorithm [Anguelos Nicolaou (Lluis Gomez)] - Contributions besides GSoC: + Greatly improved and accelerated dnn module in opencv_contrib: - Many new layers, including deconvolution, LSTM etc. - Support for semantic segmentation and SSD networks with samples. - TensorFlow importer + sample that runs Inception net by Google. + More image formats and camera backends supported + Interactive camera calibration app + Multiple algorithms implemented in opencv_contrib + Supported latest OSes, including Ubuntu 16.04 LTS and OSX 10.12 + Lot’s of optimizations for IA and ARM archs using parallelism, vector instructions and new OpenCL kernels. + OpenCV now can use vendor-provided OpenVX and LAPACK/BLAS (including Intel MKL, Apple’s Accelerate, OpenBLAS and Atlas) for acceleration - Refreshed opencv-build-compare.patch - Dropped upstream opencv-gcc5.patch - Replace opencv-gcc6-disable-pch.patch with upstream patch opencv-gcc6-fix-pch-support-PR8345.patch - Enable TBB support (C++ threading library) - Add dependency on openBLAS- Enable ffmpeg support unconditional- In case we build using GCC6 (or newer), add -mlra to CFLAGS to workaround gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71294.- Apply upstream patch opencv-gcc6-disable-pch.patch to disable PCH for GCC6.- Test for python versions greater than or equal to the current version.- Add python 3 support- Added opencv_contrib_face-3.1.0.tar.bz2 * This tarball is created to take only the face module from the contrib package. The Face module is required by libkface, which in its turn is required by digikam.- Added _constraints file to avoid random failures on small workers (at least for builds on PMBS)- Update to OpenCV 3.1.0 - A lot of new functionality has been introduced during Google Summer of Code 2015: + “Omnidirectional Cameras Calibration and Stereo 3D Reconstruction” – opencv_contrib/ccalib module (Baisheng Lai, Bo Li) + “Structure From Motion” – opencv_contrib/sfm module (Edgar Riba, Vincent Rabaud) + “Improved Deformable Part-based Models” – opencv_contrib/dpm module (Jiaolong Xu, Bence Magyar) + “Real-time Multi-object Tracking using Kernelized Correlation Filter” – opencv_contrib/tracking module (Laksono Kurnianggoro, Fernando J. Iglesias Garcia) + “Improved and expanded Scene Text Detection” – opencv_contrib/text module (Lluis Gomez, Vadim Pisarevsky) + “Stereo correspondence improvements” – opencv_contrib/stereo module (Mircea Paul Muresan, Sergei Nosov) + “Structured-Light System Calibration” – opencv_contrib/structured_light (Roberta Ravanelli, Delia Passalacqua, Stefano Fabri, Claudia Rapuano) + “Chessboard+ArUco for camera calibration” – opencv_contrib/aruco (Sergio Garrido, Prasanna, Gary Bradski) + “Implementation of universal interface for deep neural network frameworks” – opencv_contrib/dnn module (Vitaliy Lyudvichenko, Anatoly Baksheev) + “Recent advances in edge-aware filtering, improved SGBM stereo algorithm” – opencv/calib3d and opencv_contrib/ximgproc (Alexander Bokov, Maksim Shabunin) + “Improved ICF detector, waldboost implementation” – opencv_contrib/xobjdetect (Vlad Shakhuro, Alexander Bovyrin) + “Multi-target TLD tracking” – opencv_contrib/tracking module (Vladimir Tyan, Antonella Cascitelli) + “3D pose estimation using CNNs” – opencv_contrib/cnn_3dobj (Yida Wang, Manuele Tamburrano, Stefano Fabri) - Many great contributions made by the community, such as: + Support for HDF5 format + New/Improved optical flow algorithms + Multiple new image processing algorithms for filtering, segmentation and feature detection + Superpixel segmentation and much more - IPPICV is now based on IPP 9.0.1, which should make OpenCV even faster on modern Intel chips - opencv_contrib modules can now be included into the opencv2.framework for iOS - Newest operating systems are supported: Windows 10 and OSX 10.11 (Visual Studio 2015 and XCode 7.1.1) - Interoperability between T-API and OpenCL, OpenGL, DirectX and Video Acceleration API on Linux, as well as Android 5 camera. - HAL (Hardware Acceleration Layer) module functionality has been moved into corresponding basic modules; the HAL replacement mechanism has been implemented along with the examples - Removed improve-sphinx-search.diff, opencv-altivec-vector.patch, opencv-pkgconfig.patch and opencv-samples.patch, fixed upstream. - Fixed opencv-qt5-sobump.diff, opencv-build-compare.patch, opencv-gcc5.patch and opencv-gles.patch. - Version OpenCV 3.0.0 + ~1500 patches, submitted as PR @ github. All our patches go the same route. + opencv_contrib (http://github.com/itseez/opencv_contrib) repository has been added. A lot of new functionality is there already! opencv_contrib is only compatible with 3.0/master, not 2.4. Clone the repository and use “cmake … - D OPENCV_EXTRA_MODULES_PATH= …” to build opencv and opencv_contrib together. + a subset of Intel IPP (IPPCV) is given to us and our users free of charge, free of licensing fees, for commercial and non-commerical use. It’s used by default in x86 and x64 builds on Windows, Linux and Mac. + T-API (transparent API) has been introduced, this is transparent GPU acceleration layer using OpenCL. It does not add any compile-time or runtime dependency of OpenCL. When OpenCL is available, it’s detected and used, but it can be disabled at compile time or at runtime. It covers ~100 OpenCV functions. This work has been done by contract and with generous support from AMD and Intel companies. + ~40 OpenCV functions have been accelerated using NEON intrinsics and because these are mostly basic functions, some higher-level functions got accelerated as well. + There is also new OpenCV HAL layer that will simplifies creation of NEON-optimized code and that should form a base for the open-source and proprietary OpenCV accelerators. + The documentation is now in Doxygen: http://docs.opencv.org/master/ + We cleaned up API of many high-level algorithms from features2d, calib3d, objdetect etc. They now follow the uniform “abstract interface – hidden implementation” pattern and make extensive use of smart pointers (Ptr<>). + Greatly improved and extended Python & Java bindings (also, see below on the Python bindings), newly introduced Matlab bindings (still in alpha stage). + Improved Android support – now OpenCV Manager is in Java and supports both 2.4 and 3.0. + Greatly improved WinRT support, including video capturing and multi-threading capabilities. Thanks for Microsoft team for this! + Big thanks to Google who funded several successive GSoC programs and let OpenCV in. The results of many successful GSoC 2013 and 2014 projects have been integrated in opencv 3.0 and opencv_contrib (earlier results are also available in OpenCV 2.4.x). We can name: - text detection - many computational photography algorithms (HDR, inpainting, edge-aware filters, superpixels, …) - tracking and optical flow algorithms - new features, including line descriptors, KAZE/AKAZE - general use optimization (hill climbing, linear programming) - greatly improved Python support, including Python 3.0 support, many new tutorials & samples on how to use OpenCV with Python. - 2d shape matching module and 3d surface matching module - RGB-D module - VTK-based 3D visualization module - etc. + Besides Google, we enjoyed (and hope that you will enjoy too) many useful contributions from community, like: - biologically inspired vision module - DAISY features, LATCH descriptor, improved BRIEF - image registration module - etc.- Reduce build-compare noise opencv-build-compare.patch- Remove BuildRequirement for python-sphinx in SLE12, since it's not available there and it's not a mandatory requirement.- Reduce differences between two spec files- Use pkgconfig for ffmpeg BuildRequires- Update improve-sphinx-search.diff for new python-Sphinx(1.3.1) * now that sphinx-build disallow executing without arguments and give you "Insufficient arguments" error, use "sphinx-build -h" instead * the default usages output ie. sphinx-build(or --help) no longer are standard error but standard output, drop OUTPUT_QUIET and add OUTPUT_VARIABLE throws the output to SPHINX_OUTPUT as well- support gcc 5 (i.e. gcc versions without minor version): opencv-gcc5.patch- Update to OpenCV 2.4.11 - can't find NEWS or Changelog merely collecting bug fixes while 3.0 is in the making, 2.4.11 didn't even make it on their web page, it's only on download server - remove opencv-underlinking.patch as obsolete - remove upstream patch bomb_commit_gstreamer-1x-support.patch - commenting out opencv-pkgconfig.patch - possibly it requires a rebase, but the problem it tries to solve is unclear- Add specific buildrequires for libpng15, so that we are building against the system provided libpng.opencv-qt5-develh01-ch2c 1738840022  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~   4.9.0-150600.3.2.14.9.0-150600.3.2.14.9.04.9.04.9.0   !!!!""!!######!!!$$$$$$$$%%&&&&'&(()(**((((++,,,,,,,,,----../.00000122222222222213444444445565755889888::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;<====>?@A>>>>>>>>>>>>>>>>>>>>BCDDEEopencv2arucoaruco.hpparuco_calib.hppcharuco.hppcalib3dcalib3d.hppcalib3d.hppcalib3d_c.hcorecore.hppaffine.hppasync.hppbase.hppbindings_utils.hppbufferpool.hppcheck.hppcore.hppcore_c.hcudacuda.hppcuda.inl.hppblock.hppborder_interpolate.hppcolor.hppcommon.hppdatamov_utils.hppdetailcolor_detail.hppreduce.hppreduce_key_val.hpptransform_detail.hpptype_traits_detail.hppvec_distance_detail.hppdynamic_smem.hppemulation.hppfilters.hppfuncattrib.hppfunctional.hpplimits.hppreduce.hppsaturate_cast.hppscan.hppsimd_functions.hpptransform.hpptype_traits.hpputility.hppvec_distance.hppvec_math.hppvec_traits.hppwarp.hppwarp_reduce.hppwarp_shuffle.hppcuda_stream_accessor.hppcuda_types.hppcv_cpu_dispatch.hcv_cpu_helper.hcvdef.hcvstd.hppcvstd.inl.hppcvstd_wrapper.hppdetailasync_promise.hppdispatch_helper.impl.hppexception_ptr.hppdirectx.hppdualquaternion.hppdualquaternion.inl.hppeigen.hppfast_math.hpphalhal.hppinterface.hintrin.hppintrin_avx.hppintrin_avx512.hppintrin_cpp.hppintrin_forward.hppintrin_lasx.hppintrin_lsx.hppintrin_msa.hppintrin_neon.hppintrin_rvv.hppintrin_rvv071.hppintrin_rvv_010_compat_non-policy.hppintrin_rvv_010_compat_overloaded-non-policy.hppintrin_rvv_011_compat.hppintrin_rvv_compat_overloaded.hppintrin_rvv_scalable.hppintrin_sse.hppintrin_sse_em.hppintrin_vsx.hppintrin_wasm.hppmsa_macros.hsimd_utils.impl.hppmat.hppmat.inl.hppmatx.hppneon_utils.hppocl.hppocl_genbase.hppopenclocl_defs.hppopencl_info.hppopencl_svm.hppruntimeautogeneratedopencl_clblas.hppopencl_clfft.hppopencl_core.hppopencl_core_wrappers.hppopencl_gl.hppopencl_gl_wrappers.hppopencl_clblas.hppopencl_clfft.hppopencl_core.hppopencl_core_wrappers.hppopencl_gl.hppopencl_gl_wrappers.hppopencl_svm_20.hppopencl_svm_definitions.hppopencl_svm_hsa_extension.hppopengl.hppoperations.hppoptim.hppovx.hppparallelbackendparallel_for.openmp.hppparallel_for.tbb.hppparallel_backend.hpppersistence.hppquaternion.hppquaternion.inl.hppsaturate.hppsimd_intrinsics.hppsoftfloat.hppsse_utils.hpptraits.hpptypes.hpptypes_c.hutility.hpputilsallocator_stats.hppallocator_stats.impl.hppfilesystem.hppfp_control_utils.hppinstrumentation.hpplogger.defines.hpplogger.hpplogtag.hpptls.hpptrace.hppva_intel.hppversion.hppvsx_utils.hppcvconfig.hdnndnn.hppall_layers.hppdict.hppdnn.hppdnn.inl.hpplayer.details.hpplayer.hppshape_utils.hpputilsdebug_utils.hppinference_engine.hppversion.hppfaceface.hppbif.hppface_alignment.hppfacemark.hppfacemarkAAM.hppfacemarkLBF.hppfacemark_train.hppfacerec.hppmace.hpppredict_collector.hppfeatures2dfeatures2d.hppfeatures2d.hpphalinterface.hflannflann.hppall_indices.hallocator.hany.hautotuned_index.hcomposite_index.hconfig.hdefines.hdist.hdummy.hdynamic_bitset.hflann.hppflann_base.hppgeneral.hground_truth.hhdf5.hheap.hhierarchical_clustering_index.hindex_testing.hkdtree_index.hkdtree_single_index.hkmeans_index.hlinear_index.hlogger.hlsh_index.hlsh_table.hmatrix.hminiflann.hppnn_index.hobject_factory.hparams.hrandom.hresult_set.hsampling.hsaving.hsimplex_downhill.htimer.hgapigapi.hppcore.hppcpucore.hppgcpukernel.hppimgproc.hppot.hppstereo.hppvideo.hppfluidcore.hppgfluidbuffer.hppgfluidkernel.hppimgproc.hppgarg.hppgarray.hppgasync_context.hppgcall.hppgcommon.hppgcompiled.hppgcompiled_async.hppgcompoundkernel.hppgcomputation.hppgcomputation_async.hppgframe.hppgkernel.hppgmat.hppgmetaarg.hppgopaque.hppgproto.hppgpucore.hppggpukernel.hppimgproc.hppgscalar.hppgstreaming.hppgtransform.hppgtype_traits.hppgtyped.hppimgproc.hppinferinfer.hppbindings_ie.hppbindings_onnx.hppbindings_ov.hppie.hpponnx.hppov.hppparsers.hppmedia.hppoakinfer.hppoak.hppoclcore.hppgoclkernel.hppimgproc.hppopencv_includes.hppoperators.hppot.hppownassert.hppconvert.hppcvdefs.hppexports.hppmat.hppsaturate.hppscalar.hpptypes.hppplaidmlcore.hppgplaidmlkernel.hppplaidml.hpppythonpython.hpprenderrender.hpprender.hpprender_types.hpprmat.hpps11ns11n.hppbase.hppstereo.hppstreamingcap.hppdesync.hppformat.hppgstreamergstreamerpipeline.hppgstreamersource.hppmeta.hpponevplaccel_types.hppcfg_params.hppdata_provider_interface.hppdefault.hppdevice_selector_interface.hppsource.hppqueue_source.hppsource.hppsync.hpputilany.hppcompiler_hints.hppcopy_through_move.hppoptional.hppthrow.hpptype_traits.hpputil.hppvariant.hppvideo.hpphighguihighgui.hpphighgui.hpphighgui_c.himgcodecsimgcodecs.hppimgcodecs.hppimgcodecs_c.hios.hlegacyconstants_c.hmacosx.himgprocimgproc.hppbindings.hppdetailgcgraph.hpphalhal.hppinterface.himgproc.hppimgproc_c.hsegmentation.hpptypes_c.hmlml.hppml.hppml.inl.hppobjdetectobjdetect.hpparuco_board.hpparuco_detector.hpparuco_dictionary.hppbarcode.hppcharuco_detector.hppdetection_based_tracker.hppface.hppgraphical_code_detector.hppobjdetect.hppopencv.hppopencv_modules.hppoptflowoptflow.hppmotempl.hpppcaflow.hpprlofflow.hppsparse_matching_gpc.hppphotophoto.hppcuda.hpplegacyconstants_c.hphoto.hppplot.hppshapeshape.hppemdL1.hpphist_cost.hppshape.hppshape_distance.hppshape_transformer.hppstitchingstitching.hppdetailautocalib.hppblenders.hppcamera.hppexposure_compensate.hppmatchers.hppmotion_estimators.hppseam_finders.hpptimelapsers.hpputil.hpputil_inl.hppwarpers.hppwarpers_inl.hppwarpers.hppsuperressuperres.hppoptical_flow.hpptrackingtracking.hppfeature.hppkalman_filters.hpponlineBoosting.hpptldDataset.hpptracking.hpptracking_by_matching.hpptracking_internals.hpptracking_legacy.hppvideovideo.hppbackground_segm.hppdetailtracking.detail.hpplegacyconstants_c.htracking.hppvideo.hppvideoiovideoio.hppcap_ios.hlegacyconstants_c.hregistry.hppvideoio.hppvideoio_c.hvideostabvideostab.hppdeblurring.hppfast_marching.hppfast_marching_inl.hppframe_source.hppglobal_motion.hppinpainting.hpplog.hppmotion_core.hppmotion_stabilizing.hppoptical_flow.hppoutlier_rejection.hppring_buffer.hppstabilizer.hppwobble_suppression.hppximgprocximgproc.hppbrightedges.hppcolor_match.hppderiche_filter.hppdisparity_filter.hppedge_drawing.hppedge_filter.hppedgeboxes.hppedgepreserving_filter.hppestimated_covariance.hppfast_hough_transform.hppfast_line_detector.hppfind_ellipses.hppfourier_descriptors.hpplsc.hpppaillou_filter.hpppeilin.hppradon_transform.hppridgefilter.hpprun_length_morphology.hppscansegment.hppseeds.hppsegmentation.hppslic.hppsparse_match_interpolator.hppstructured_edge_detection.hppweighted_median_filter.hppopencv4OpenCVConfig-version.cmakeOpenCVConfig.cmakeOpenCVModules-release.cmakeOpenCVModules.cmakelibopencv_aruco.solibopencv_calib3d.solibopencv_core.solibopencv_dnn.solibopencv_face.solibopencv_features2d.solibopencv_flann.solibopencv_gapi.solibopencv_highgui.solibopencv_imgcodecs.solibopencv_imgproc.solibopencv_ml.solibopencv_objdetect.solibopencv_optflow.solibopencv_photo.solibopencv_plot.solibopencv_shape.solibopencv_stitching.solibopencv_superres.solibopencv_tracking.solibopencv_video.solibopencv_videoio.solibopencv_videostab.solibopencv_ximgproc.soopencv4.pcopencv-develLICENSELICENSE.contribvalgrind.suppvalgrind_3rdparty.supp/usr/include//usr/include/opencv2//usr/include/opencv2/aruco//usr/include/opencv2/calib3d//usr/include/opencv2/core//usr/include/opencv2/core/cuda//usr/include/opencv2/core/cuda/detail//usr/include/opencv2/core/detail//usr/include/opencv2/core/hal//usr/include/opencv2/core/opencl//usr/include/opencv2/core/opencl/runtime//usr/include/opencv2/core/opencl/runtime/autogenerated//usr/include/opencv2/core/parallel//usr/include/opencv2/core/parallel/backend//usr/include/opencv2/core/utils//usr/include/opencv2/dnn//usr/include/opencv2/dnn/utils//usr/include/opencv2/face//usr/include/opencv2/features2d//usr/include/opencv2/features2d/hal//usr/include/opencv2/flann//usr/include/opencv2/gapi//usr/include/opencv2/gapi/cpu//usr/include/opencv2/gapi/fluid//usr/include/opencv2/gapi/gpu//usr/include/opencv2/gapi/infer//usr/include/opencv2/gapi/oak//usr/include/opencv2/gapi/ocl//usr/include/opencv2/gapi/own//usr/include/opencv2/gapi/plaidml//usr/include/opencv2/gapi/python//usr/include/opencv2/gapi/render//usr/include/opencv2/gapi/s11n//usr/include/opencv2/gapi/streaming//usr/include/opencv2/gapi/streaming/gstreamer//usr/include/opencv2/gapi/streaming/onevpl//usr/include/opencv2/gapi/util//usr/include/opencv2/highgui//usr/include/opencv2/imgcodecs//usr/include/opencv2/imgcodecs/legacy//usr/include/opencv2/imgproc//usr/include/opencv2/imgproc/detail//usr/include/opencv2/imgproc/hal//usr/include/opencv2/ml//usr/include/opencv2/objdetect//usr/include/opencv2/optflow//usr/include/opencv2/photo//usr/include/opencv2/photo/legacy//usr/include/opencv2/shape//usr/include/opencv2/stitching//usr/include/opencv2/stitching/detail//usr/include/opencv2/superres//usr/include/opencv2/tracking//usr/include/opencv2/video//usr/include/opencv2/video/detail//usr/include/opencv2/video/legacy//usr/include/opencv2/videoio//usr/include/opencv2/videoio/legacy//usr/include/opencv2/videostab//usr/include/opencv2/ximgproc//usr/lib64/cmake//usr/lib64/cmake/opencv4//usr/lib64//usr/lib64//usr/lib64//usr/lib64//usr/lib64/pkgconfig//usr/share/licenses//usr/share/licenses/opencv-devel//usr/share/opencv4/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:37341/SUSE_SLE-15-SP6_Update/38c7ad7f44a119e233f977fc3588789b-opencv.SUSE_SLE-15-SP6_Updatedrpmxz5x86_64-suse-linux       directoryC++ source, ASCII textC source, UTF-8 Unicode textC source, ASCII textC++ source, UTF-8 Unicode text, with very long linesC source, ASCII text, with very long linesC++ source, ASCII text, with very long linesASCII textC++ source, UTF-8 Unicode textC++ source, UTF-8 Unicode (with BOM) textObjective-C source, ASCII textASCII text, with very long linespkgconfig filePPR+oyOrutf-8d54a3ac90c6aced7020dded9b1c924e124bab2df00c73b111c62b13659b85f70?7zXZ !t/\ ]"k% .V8(w~ Bӗ Hz6} |9W T8>4${c$|U6Йt*/}p 컼QoufE/W\z_&s&n֙^}#\trUOCۡr\$xE evxkvIC;Bؚ2;sI E9n@is=tO] !Cw%APMǼ;W6rM7hڅ0}j]JcI_Y~b냦jZ8muapEa5; BGlm[@6^%^E_Nӡ\u-j^Z'h׸ٰgO({ܯHe&Bh~lP< +Q?+L=5X>~P !S.QzCK[d45ΉvlT,>0ҺSi6I cGwWzQWpVbB3<;<;׋U|h3.rOVy{' |t ݳ VŜ !YMmJ, ?v& E¯1KBa$GrEZ)Kv!'+%XU|gƋ~*. Z7)(oLIPˎ +C|MB=Q%߽jF]bq%\V+=]bI}i0E1e:3ΤF=O^͛Jؽ!9ß^8XkIAqыRiLSĉZn֣y N5Q;Azo$ }3QJe2e"j0]&=eK +5+c<#S`˰M0VCES! F2+ge\/qfcW?[^wnlw(iX'RUɨjcRaXX녿(rp*z,;A"se aLf/Cҥ=xZ& D SBouv{vX%GNk9uu%nO4Qc1~c#w$oY\H4Kݮi{Zb_ug\+97z|j"zq@P;ҽ[@QQ98cd 5A4BXIYoGBS<މawnrJ|^rr ӲUG,`5bݼO,BIqȅz st3*_y.W-2oΦ.Y_H9iX%MDzM=~% rycnbK*P!&;ezՊ5 с\~?ZA}Wߩ7bl dc:p!J֧%hHX3f ItxzۿFlXj0-avdW0aĨqSS"i)۫&ʪ|9f1?W*qa[k*SK'\ ot@R$)M4Ok1HA 陷{ =DG2brN4߶H9_W[v&[A؉($ &9TĊ0ǔsSIȽ6rKOW:{%!~n-ɏCA\Qr|+IX@e#Ax6 Eɝ:[J pͥ5n,'>03*݋3 EQ۷,a\6[iVb7dOs&Gd 571CzGaM613}^g3|_U#Ad}Xz߸pc&%vꬻ ayDJEs%>Ep/A1&EIh:|M9LHuoVL>O>YF9x!cSh]uC";^N,a-^AА-J$Ԛ{5d`p4rRw=-|SxBg8&d7Z6dݑ2t~Q9Y+L\-Ò~s22={IqfO (FGznxAJPmO?ٺN7 S51jSBe4XyvUTl;QKe3Xc5 );Zxgk OO֤֞ ݏ SQOckQgϞ=JFt>.O7mGHͤoEY˼A*PeFch#گ+4E78]-ܺ-3V͜pU>D[椹b(Wi4tAI#g[>Z #6jbxNXVyuL ]c̭- W5và ʻS67s_^ԯ ޲-%MXqimAYu8 YZ