??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美日韩免费在线视频,夜夜嗨av一区二区三区四区 ,欧美 日韩 国产 一区http://m.shnenglu.com/chinapeter2008/c++爱好?/description>zh-cnSat, 04 Oct 2025 08:47:49 GMTSat, 04 Oct 2025 08:47:49 GMT60ONVIF协议云台服务规范(?-Ud操作 ONVIF PTZ Service Specification-Move Operationshttp://m.shnenglu.com/chinapeter2008/archive/2021/06/19/217721.htmlcanaancanaanSat, 19 Jun 2021 12:38:00 GMThttp://m.shnenglu.com/chinapeter2008/archive/2021/06/19/217721.htmlhttp://m.shnenglu.com/chinapeter2008/comments/217721.htmlhttp://m.shnenglu.com/chinapeter2008/archive/2021/06/19/217721.html#Feedback0http://m.shnenglu.com/chinapeter2008/comments/commentRss/217721.htmlhttp://m.shnenglu.com/chinapeter2008/services/trackbacks/217721.html5.3    Ud操作

    本节介绍三种UdPTZ单元操作Q绝寏V相ҎUd。所有操作都需要profile tokenQ引用PTZ配置中的Media Profile?br />

    所有移动命令应以非d方式执行Q表CZ应等到请求的Ud操作完成。新的移动请求可以覆盖最后的Ud操作?/p>

    ׃本规范涉及的物理讑֤范围q泛Q因此本规范不要求对PTZUd操作的特定相应时间。但是设备应量减少PTZUd命o响应的gq。设备没有完全控制PTZ控制输入和设备移动的滞后。网l与客户端的延迟会增加滞后。实现应该尽快减设备的延迟?/p>

5.3.1.    l对UdQAbsoluteMoveQ?br />    如果PTZ节点支持l对水^/俯Ԓ或绝对变焦的UdQ则应支持绝对移动操作。这个命令的位置参数指定PTZ单元要移动的l对位置。它分ؓ一个可选的水^/俯Ԓ元素和一个可选的变焦元素。如果忽略了水^/俯Ԓ位置Q则当前的水q?俯Ԓq动不受此命令的影响。变焦也是同L原理?/p>

    PTZ节点支持的绝对位|空_如果省略了空间信息,则PTZ配置的相应的默认I间Q采用指定控件的媒体属性。设备仅为有l对位置I间提供支持l对水^/俯Ԓ或变焦的服务。现有的Ud操作命o中的速度参数比PTZ配置中的默认速度优先U要高。如果空间引用了速度参数Q那么需要支持PTZ节点支持的速度I间?/p>

    如果无法辑ֈ所要求的绝对位|,操作失败?/p>

hQREQUESTQ?
• ProfileToken [tt:ReferenceToken]
对现有媒体配|文件的引用
• Position [tt:PTZVector]
指定l对目标位置的矢?br />• Speed – 可选[tt:PTZSpeed]
可选速度矢量
响应QRESPONSEQ?/strong>: I消?br />错误QFAULTSQ?/strong>Q?br />• env:Sender - ter:InvalidArgVal - ter:NoProfile
h的配|文件token内ProfileToken不存在?br />• env:Sender - ter:InvalidArgVal - ter:NoPTZProfile
h的配|文件token未引用PTZ配置?br />• env:Sender - ter:InvalidArgVal - ter:SpaceNotSupported
引用了PTZ节点不支持的I间?br />• env:Sender - ter:InvalidArgVal - ter:InvalidPosition
h的位|超Z界限?br />• env:Sender - ter:InvalidArgVal - ter:InvalidSpeed
h的速度出了界限?br />讉K权限c(ACCESS CLASSQ?/strong>Q?br />ACTUATE

5.3.2.    相对UdQRelativeMoveQ?br />

    如果PTZ节点支持相对水^/俯Ԓ或相对变焦移动,则需要支持相对移动(RelativeMoveQ操作。此操作的{换参数指定当前位|与要移动的位置的插倹{该操作可分Z个可选的水^/俯Ԓ元素和一个可选的变焦参数。如果水q?俯Ԓ忽略掉了Q那么当前的水^/俯Ԓ位置不会受此命o的媄响。变焦元素也同样?br />    转换元素中引用的I间应该为PTZ节点支持的{换空间。如果{换参数的I间信息忽略掉了Q那么将ҎPTZ配置的默认空间。设备需要支持相Ҏq?俯ԒUdQ相对变焦移动或不支持相对运动?br />    在请求移动的命o中携带的速度参数优先于PTZ配置中的默认速度。如果空间引用了速度参数Q则PTZ节点需要支持速度I间?br />    通过发送水q?俯Ԓ和变?值命令可以在当前位置停止PTZ单元。停止应h与引用相对空间完全相同的效果?br />    如果h转换后的l对位置是无法到辄Q那么PTZ节点需要移动最接近的有效位|?br />hQREQUESTQ?
• ProfileToken [tt:ReferenceToken]
对现有媒体配|文件的引用
• Translation [tt:PTZVector]
指定相对于当前位|的位置q移的向?br />• Speed – 可选[tt:PTZSpeed]
可选速度矢量
响应QRESPONSEQ?/strong>: I消?br />错误QFAULTSQ?/strong>Q?br />• env:Sender - ter:InvalidArgVal - ter:NoProfile
h的配|文件token内ProfileToken不存在?br />• env:Sender - ter:InvalidArgVal - ter:NoPTZProfile
h的配|文件token未引用PTZ配置?br />• env:Sender - ter:InvalidArgVal - ter:SpaceNotSupported
引用了PTZ节点不支持的I间?br />• env:Sender - ter:InvalidArgVal - ter:InvalidTranslation
h的{换超Z界限?br />• env:Sender - ter:InvalidArgVal - ter:InvalidSpeed
h的速度出了界限?br />讉K权限c(ACCESS CLASSQ?/strong>Q?br />ACTUATE

5.3.3.    q箋UdQContinuousMoveQ?br />

    hPTZ功能的设备应支持q箋Ud。此命o的速度参数为水q?俯Ԓ和羃放指定的有符L速度倹{组合的水^/俯Ԓ元素及变焦元素也是可选的。如果水q?俯Ԓ元素忽略掉了Q当前的水^/俯Ԓ元素则不受此命o的媄响。变焦元素也是如此。引用有速度元素的空间的PTZ节点需要支持速度I间。如果速度参数忽略掉了I间信息Q那么采用相应的指定媒体文g的PTZ配置的默认空间。设备通过仅ؓ支持的情冉|供速度I间来支持连l水q?俯ԒUd和连l变焦动作?br />    当前Ud操作的超时参C先于相应PTZ配置的默认超时参数。超时参数决定PTZ节点的连l移动的旉?br />    ?作ؓ该u的连l移动参数时Q设备应停止在特定uQ水qI俯Ԓ或变焦)的移动。引用的速度I间也应有独立的停止功能。这个命令在q箋Ud的媄响与?.3.5节中的停止命令是一L?br />    h的速度得到的绝对位|是不能到达的,则PTZ节点应移动到最接近的能到达的位|。连l移动操作的典型应用是通过操纵杆控制PTZ?br />hQREQUESTQ?
• ProfileToken [tt:ReferenceToken]
对现有媒体配|文件的引用
• Velocity [tt:PTZSpeed]
速度矢量指定水^Q俯仰和变焦的速度?br />• Timeout– 可选[tt:duration]
可选超?br />响应QRESPONSEQ?/strong>: I消?br />错误QFAULTSQ?/strong>Q?br />• env:Sender - ter:InvalidArgVal - ter:NoProfile
h的配|文件token内ProfileToken不存在?br />• env:Sender - ter:InvalidArgVal - ter:NoPTZProfile
h的配|文件token未引用PTZ配置?br />• env:Sender - ter:InvalidArgVal - ter:SpaceNotSupported
引用了PTZ节点不支持的I间?br />• env:Sender - ter:InvalidArgVal - ter:InvalidTranslation
h的{换超Z界限?br />• env:Sender - ter:InvalidArgVal - ter:TimeoutNotSupported
指定的超时参C在支持的时旉范围内?br />• env:Sender - ter:InvalidArgVal - ter:InvalidSpeed
h的速度出了界限?br />讉K权限c(ACCESS CLASSQ?/strong>Q?br />ACTUATE

5.3.4.    地理UdQGeoMoveQ?br />

    讑֤有GeoMove信号Q则PTZ节点需要支持这cd令?br />    可选的AreaHeight和AreaWidth参数可以d到参CQ所以PTZ讑֤可以军_变焦因子。如果没有提供AreaHeight和AreaWidthQ该单元不会更改变焦。AreaHeight和AreaWidth用米来表C?br />    h的{换过E中的速度参数优先于相应的PTZ配置的默认速度。如果引用的I间含有速度参数Q那么PTZ节点应支持速度I间?br />    如果PTZ讑֤不支持自动检索地理位|,那么在执行地理引用命令之前用SetGeoLocationq行讄。客L如果在设备设|地理位|之前发送GeoMove命oQ设备应q回一个错误?br />    取决于PTZ讑֤的运动方式,h的位|可能无法到达。这U情况下讑֤应返回一个错误,表示׃物理限制无法执行h的操作?br />hQREQUESTQ?
• ProfileToken [tt:ReferenceToken]
对现有媒体配|文件的引用
• Target [tt:GeoLocation]
目标坐标?br />• Speed – 可选[tt:PTZSpeed]
指定水^Q俯仰和变焦的速度矢量?br />• AreaWidth – 可选[xs:float]
要显C的可选区域?br />• AreaHeight – 可选[xs:float]
要显C的可选区域?br />

响应QRESPONSEQ?/strong>: I消?br />错误QFAULTSQ?/strong>Q?br />• env:Sender - ter:InvalidArgVal - ter:NoProfile
h的配|文件token内ProfileToken不存在?br />• env:Sender - ter:InvalidArgVal - ter:NoPTZProfile
h的配|文件token未引用PTZ配置?br />• env:Sender - ter:InvalidArgVal - ter:GeoMoveNotSupported
讑֤不支持地理移动?br />• env:Sender - ter:InvalidArgVal - ter:UnreachablePosition
h的{换超Z界限?br />• env:Sender - ter:InvalidArgVal - ter:TimeoutNotSupported
指定的超时参C在支持的时旉范围内?br />• env:Sender - ter:InvalidArgVal - ter:GeoLocationUnknown
׃地理位置未配|或不可用,该单元无法执行GeoMove?br />讉K权限c(ACCESS CLASSQ?/strong>Q?br />ACTUATE

5.3.5.    停止QStopQ?br />

    PTZ讑֤需支持停止操作。如果没有指定停止的参数Q那么这个命令将停止所有正在进行的水^Q俯仰和变焦动作。通过指定相应的停止参数可以停止对应的操作?br />hQREQUESTQ?
• ProfileToken [tt:ReferenceToken]
对现有媒体配|文件的引用
• PanTilt – 可选[xs:boolean]
停止水^和俯仰操作(默认为trueQ?br />• Zoom – 可选[xs:boolean]
停止变焦操作Q默认ؓtrueQ?br />响应QRESPONSEQ? I消?br />错误QFAULTSQ?/strong>Q?br />• env:Sender - ter:InvalidArgVal - ter:NoProfile
h的配|文件token内ProfileToken不存在?br />• env:Sender - ter:InvalidArgVal - ter:NoPTZProfile
h的配|文件token未引用PTZ配置?br />讉K权限c(ACCESS CLASSQ?/strong>Q?br />ACTUATE

5.3.6.    Udq开始跟t(MoveAndStartTrackingQ?br />

    讑֤PTZ节点有MoveAndTrack时应该支持这个命令。这个操作的目的是向讑֤发送一个自动命令:Ud摄像机到惌的位|然后通过q踪法代理PTZ操作。用原子命令,延迟被最化。移动位|是可选的且可以按照三U模式进行设|:
• 通过地理位置坐标
• 通过预置位token
• 通过PTZVector位置
    h位置Ud的的速度参数优先于相应的PTZ配置的默认速度。如果引用空间含有速度参数Q那么PTZ节点需支持速度I间?br />    如果在同一个设备中完成了侦察和q踪Q那么ObjectID引用可以作ؓ参数Q以指定应跟t哪个对象?br />    h的绝对位|设备无法到达,则操作将p|?br />hQREQUESTQ?
• ProfileToken [tt:ReferenceToken]
对现有媒体配|文件的引用
• GeoLocation  – 可?[tt:GeoLocation]
可选目标坐标?br />• PresetToken – 可选[tt:ReferenceToken]
对一个存在的预置位token的可选应用?br />• TargetPosition – 可选[tt:PTZVector]
指定l对目标位置的可选向量?br />• Speed – 可选[tt:PTZSpeed]
可选速度矢量?br />• ObjectID – 可选[tt:ObjectID]
要跟t对象的可选Object ID?br />响应QRESPONSEQ?/strong>: I消?br />错误QFAULTSQ?/strong>Q?br />• env:Sender - ter:InvalidArgVal - ter:NoProfile
h的配|文件token内ProfileToken不存在?br />• env:Sender - ter:InvalidArgVal - ter:NoPTZProfile
h的配|文件token未引用PTZ配置?br />• env:Sender - ter:InvalidArgVal - ter:SpaceNotSupported
引用了PTZ节点不支持的I间?br />• env:Sender - ter:InvalidArgVal - ter:InvalidPosition
h的位|超Z界限?br />• env:Sender - ter:InvalidArgVal - ter:InvalidSpeed
h的速度出了界限?br />• env:Sender - ter:InvalidArgVal - ter:GeoMoveNotSupported
讑֤不支持地理移动?br />• env:Sender - ter:InvalidArgVal - ter:UnreachablePosition
h的{换超Z界限?br />• env:Sender - ter:InvalidArgVal - ter:GeoLocationUnknown
׃地理位置未配|或不可用,该单元无法执行GeoMove?br />• env:Sender - ter:InvalidArgVal - ter:NoToken
h的预|位token不存在?br />讉K权限c(ACCESS CLASSQ?/strong>Q?br />ACTUATE

5.3.7.    状态获取(GetStatusQ?br />

PTZ讑֤需支持通过GetStatus命o报告PTZ状态。PTZ状态包含以下信息:
• 位置Position (可? – 引用I间指定云台单元的绝对位|。相应PTZ配置的默认绝对空间应在位|元素中引用。如果设备有StatusPosition能力Q则需要显C此信息?br />• Ud状态MoveStatus(可? – 表示水^/俯Ԓ/变焦讑֤单元当前是否正在Ud、空闲或处于位置状态。如果设备有MoveStatus能力Q则需要显C此信息。未知状态不应在正常错误中用,但是在初始化或错误状况下使用?br />• 错误Error (可? – 表示当前PTZ错误状态。MoveStatus未知状态时Q显C个字Dc?br />• 国际标准旉 UTC Time – 指定生成状态时的UTC旉?br />hQREQUESTQ?/strong>:
• ProfileToken [tt:ReferenceToken]
对现有媒体配|文件的引用
响应QRESPONSEQ?/strong>: I消?br />• PTZStatus[tt:PTZStatus]
h媒体文g的PTZStatus?br />错误QFAULTSQ?/strong>Q?br />• env:Sender - ter:InvalidArgVal - ter:NoProfile
h的配|文件token内ProfileToken不存在?br />• env:Sender - ter:InvalidArgVal - ter:NoPTZProfile
h的配|文件token未引用PTZ配置?br />• env:Receiver – ter:Action - ter:NoStatus
h的媒体配|文件中没有可用的PTZ状态?br />讉K权限c(ACCESS CLASSQ?/strong>Q?br />    READ_MEDIA



canaan 2021-06-19 20:38 发表评论
]]>
ONVIF协议云台服务规范 (? ONVIF PTZ Service Specificationhttp://m.shnenglu.com/chinapeter2008/archive/2021/06/17/217716.htmlcanaancanaanThu, 17 Jun 2021 08:34:00 GMThttp://m.shnenglu.com/chinapeter2008/archive/2021/06/17/217716.htmlhttp://m.shnenglu.com/chinapeter2008/comments/217716.htmlhttp://m.shnenglu.com/chinapeter2008/archive/2021/06/17/217716.html#Feedback0http://m.shnenglu.com/chinapeter2008/comments/commentRss/217716.htmlhttp://m.shnenglu.com/chinapeter2008/services/trackbacks/217716.html阅读全文

canaan 2021-06-17 16:34 发表评论
]]>
ONVIF协议云台服务规范(一) ONVIF PTZ Service Specificationhttp://m.shnenglu.com/chinapeter2008/archive/2021/06/16/217715.htmlcanaancanaanWed, 16 Jun 2021 13:59:00 GMThttp://m.shnenglu.com/chinapeter2008/archive/2021/06/16/217715.htmlhttp://m.shnenglu.com/chinapeter2008/comments/217715.htmlhttp://m.shnenglu.com/chinapeter2008/archive/2021/06/16/217715.html#Feedback0http://m.shnenglu.com/chinapeter2008/comments/commentRss/217715.htmlhttp://m.shnenglu.com/chinapeter2008/services/trackbacks/217715.html阅读全文

canaan 2021-06-16 21:59 发表评论
]]>
q的夜Q瞎?/title><link>http://m.shnenglu.com/chinapeter2008/archive/2017/08/05/215143.html</link><dc:creator>canaan</dc:creator><author>canaan</author><pubDate>Sat, 05 Aug 2017 15:26:00 GMT</pubDate><guid>http://m.shnenglu.com/chinapeter2008/archive/2017/08/05/215143.html</guid><wfw:comment>http://m.shnenglu.com/chinapeter2008/comments/215143.html</wfw:comment><comments>http://m.shnenglu.com/chinapeter2008/archive/2017/08/05/215143.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://m.shnenglu.com/chinapeter2008/comments/commentRss/215143.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/chinapeter2008/services/trackbacks/215143.html</trackback:ping><description><![CDATA[ U观历史Q一代代伟hQ哲学家Q或是帝国;<br/> 曄的L斯帝国,你在哪里Q?br/> 曄的亚历山大,又去了何方,是否也渐渐被人遗忘?<br/> 埃及艛_Q伊丽莎白,你们的名气虽大,但终归已是尘土?br/><br/> 横看世界Q地球你在太阳系中算的Q?br/> 太阳pM在银河系中又是怎样的地位?<br/> 银河pdQ你在宇宙中又占哪个位置Q?br/><br/> 人啊Q你在地球上可以是一个管理者?br/> 你今日ؓ房子劳碌而委屈了自己Q你自己有想q吗Q?br/> 你昨日因Z件小事而闷L气,又何必呢Q?br/><br/> 我不知是明天太阳先升Pq是意外先来临?br/> 曄你相信生zM止眼前的苟且Q现在还怿q有诗和q方的田野吗Q?br/><br/> 你是否将自己局限在自己惌的框架中了呢Q?br/><br/> <img src ="http://m.shnenglu.com/chinapeter2008/aggbug/215143.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/chinapeter2008/" target="_blank">canaan</a> 2017-08-05 23:26 <a href="http://m.shnenglu.com/chinapeter2008/archive/2017/08/05/215143.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>c#与c++cd转换Qc#调用c++动态库DLLcd问题Q?/title><link>http://m.shnenglu.com/chinapeter2008/archive/2016/07/22/214029.html</link><dc:creator>canaan</dc:creator><author>canaan</author><pubDate>Fri, 22 Jul 2016 06:36:00 GMT</pubDate><guid>http://m.shnenglu.com/chinapeter2008/archive/2016/07/22/214029.html</guid><wfw:comment>http://m.shnenglu.com/chinapeter2008/comments/214029.html</wfw:comment><comments>http://m.shnenglu.com/chinapeter2008/archive/2016/07/22/214029.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/chinapeter2008/comments/commentRss/214029.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/chinapeter2008/services/trackbacks/214029.html</trackback:ping><description><![CDATA[<div>c#与C++cd转换Q网?011-12-08 8:33//c++:HANDLE(void   *)          ----    c#:System.IntPtr       <br />//c++:Byte(unsigned   char)     ----    c#:System.Byte        <br />//c++:SHORT(short)              ----    c#:System.Int16        <br />//c++:WORD(unsigned   short)    ----    c#:System.UInt16       <br /> //c++:INT(int)                 ----    c#:System.Int16       <br />//c++:INT(int)                  ----    c#:System.Int32        <br />//c++:UINT(unsigned   int)      ----    c#:System.UInt16       <br />//c++:UINT(unsigned   int)      ----    c#:System.UInt32       <br />//c++:LONG(long)                ----    c#:System.Int32        <br />//c++:ULONG(unsigned   long)    ----    c#:System.UInt32        <br />//c++:DWORD(unsigned   long)    ----    c#:System.UInt32        <br />//c++:DECIMAL                   ----    c#:System.Decimal        <br />//c++:BOOL(long)                ----    c#:System.Boolean        <br />//c++:CHAR(char)                ----    c#:System.Char        <br />//c++:LPSTR(char   *)           ----    c#:System.String        <br />//c++:LPWSTR(wchar_t   *)       ----    c#:System.String        <br />//c++:LPCSTR(const   char   *)  ----    c#:System.String        <br />//c++:LPCWSTR(const   wchar_t   *)      ----    c#:System.String        <br />//c++:PCAHR(char   *)   ----    c#:System.String        <br />//c++:BSTR              ----    c#:System.String        <br />//c++:FLOAT(float)      ----    c#:System.Single        <br />//c++:DOUBLE(double)    ----    c#:System.Double        <br />//c++:VARIANT           ----    c#:System.Object        <br />//c++:PBYTE(byte   *)   ----    c#:System.Byte[]        <br />//c++:BSTR      ----    c#:StringBuilder       <br />//c++:LPCTSTR   ----    c#:StringBuilder       <br />//c++:LPCTSTR   ----    c#:string       <br />//c++:LPTSTR    ----    c#:[MarshalAs(UnmanagedType.LPTStr)] string        <br />//c++:LPTSTR 输出变量?nbsp;   ----    c#:StringBuilder 输出变量?nbsp;      <br />//c++:LPCWSTR   ----    c#:IntPtr       <br />//c++:BOOL      ----    c#:bool          <br />//c++:HMODULE   ----    c#:IntPtr           <br />//c++:HINSTANCE ----    c#:IntPtr        <br />//c++:l构?nbsp;   ----    c#:public struct l构体{};        <br />//c++:l构?**变量?nbsp;  ----    c#:out 变量?nbsp; <br />//C#中提前申明一个结构体实例化后的变量名       <br />//c++:l构?&变量?nbsp;   ----    c#:ref l构体变量名                <br />//c++:WORD      ----    c#:ushort       <br />//c++:DWORD     ----    c#:uint       <br />//c++:DWORD     ----    c#:int       <br />//c++:UCHAR     ----    c#:int       <br />//c++:UCHAR     ----    c#:byte       <br />//c++:UCHAR*    ----    c#:string       <br />//c++:UCHAR*    ----    c#:IntPtr       <br />//c++:GUID      ----    c#:Guid       <br />//c++:Handle    ----    c#:IntPtr       <br />//c++:HWND      ----    c#:IntPtr       <br />//c++:DWORD     ----    c#:int       <br />//c++:COLORREF  ----    c#:uint       <br />//c++:unsigned char     ----    c#:byte       <br />//c++:unsigned char *   ----    c#:ref byte       <br />//c++:unsigned char *   ----    c#:[MarshalAs(UnmanagedType.LPArray)] byte[]       <br />//c++:unsigned char *   ----    c#:[MarshalAs(UnmanagedType.LPArray)] Intptr       <br />//c++:unsigned char &   ----    c#:ref byte       <br />//c++:unsigned char 变量?nbsp;     ----    c#:byte 变量?nbsp;      <br />//c++:unsigned short 变量?nbsp;    ----    c#:ushort 变量?nbsp;      <br />//c++:unsigned int 变量?nbsp;      ----    c#:uint 变量?nbsp;      <br />//c++:unsigned long 变量?nbsp;     ----    c#:ulong 变量?nbsp;      <br />//c++:char 变量?nbsp;      ----    c#:byte 变量?nbsp; <br />//C++中一个字W用一个字节表C?C#中一个字W用两个字节表示       <br />//c++:char 数组名[数组大小]     ----    c#:MarshalAs(UnmanagedType.ByValTStr, SizeConst = 数组大小)]       <br />public string 数组? ushort       <br />//c++:char *            ----    c#:string      </div><div></div><div>//传入参数       <br />//c++:char *            ----    c#:StringBuilder<br />//传出参数       <br />//c++:char *变量?nbsp;     ----    c#:ref string 变量?nbsp;      </div><div></div><div>//c++:char *输入变量?nbsp; ----    c#:string 输入变量?nbsp;      <br />//c++:char *输出变量?nbsp; ----    c#:[MarshalAs(UnmanagedType.LPStr)] StringBuilder 输出变量?nbsp;      <br />//c++:char **           ----    c#:string       <br />//c++:char **变量?nbsp;    ----    c#:ref string 变量?nbsp;      <br />//c++:const char *      ----    c#:string       <br />//c++:char[]            ----    c#:string       <br />//c++:char 变量名[数组大小]     ----    c#:[MarshalAs(UnmanagedType.ByValTStr,SizeConst=数组大小)] public string 变量?    </div><div></div><div>//c++:struct l构体名 *变量?nbsp;  ----    c#:ref l构体名变量?nbsp;      </div><div></div><div>//c++:委托 变量?nbsp;  ----    c#:委托变量?nbsp;      <br />//c++:int       ----    c#:int       <br />//c++:int       ----    c#:ref int       <br />//c++:int &     ----    c#:ref int       <br />//c++:int *     ----    c#:ref int     <br />//C#中调用前需定义int 变量?= 0;       <br />//c++:*int      ----    c#:IntPtr       <br />//c++:int32 PIPTR *     ----    c#:int32[]       <br />//c++:float PIPTR *     ----    c#:float[]               <br />//c++:double** 数组?nbsp;         ----    c#:ref double 数组?nbsp;      <br />//c++:double*[] 数组?nbsp;         ----    c#:ref double 数组?nbsp;      <br />//c++:long          ----    c#:int       <br />//c++:ulong         ----    c#:int               <br />//c++:UINT8 *       ----    c#:ref byte      <br />//C#中调用前需定义byte 变量?= new byte();               <br />//c++:handle    ----    c#:IntPtr       <br />//c++:hwnd      ----    c#:IntPtr                       <br />//c++:void *    ----    c#:IntPtr               <br />//c++:void * user_obj_param    ----    c#:IntPtr user_obj_param       <br />//c++:void * 对象名称    ----    c#:([MarshalAs(UnmanagedType.AsAny)]Object 对象名称               <br />//c++:char, INT8, SBYTE, CHAR                               ----    c#:System.SByte         <br />//c++:short, short int, INT16, SHORT                        ----    c#:System.Int16         <br />//c++:int, long, long int, INT32, LONG32, BOOL , INT        ----    c#:System.Int32         <br />//c++:__int64, INT64, LONGLONG                              ----    c#:System.Int64         <br />//c++:unsigned char, UINT8, UCHAR , BYTE                    ----    c#:System.Byte         <br />//c++:unsigned short, UINT16, USHORT, WORD, ATOM, WCHAR , __wchar_t             ----    c#:System.UInt16         </div><div></div><div>//c++:unsigned, unsigned int, UINT32, ULONG32, DWORD32, ULONG, DWORD, UINT      ----    c#:System.UInt32         </div><div></div><div>//c++:unsigned __int64, UINT64, DWORDLONG, ULONGLONG                            ----    c#:System.UInt64         </div><div></div><div>//c++:float, FLOAT                                                              ----    c#:System.Single         </div><div></div><div>//c++:double, long double, DOUBLE                                               ----    c#:System.Double         </div><div></div><div>//Win32 Types        ----  CLR Type                 <br />//Struct需要在C#里重新定义一个Struct       <br />//CallBack回调函数需要封装在一个委托里Qdelegate static extern int FunCallBack(string str);       <br />//unsigned char** ppImage替换成IntPtr ppImage       <br />//int& nWidth替换成ref int nWidth       <br />//int*, int&, 则都可用 ref int 对应       <br />//双针指类型参敎ͼ可以?ref IntPtr       <br />//函数指针使用c++: typedef double (*fun_type1)(double); 对应 c#:public delegate double  fun_type1(double);       <br />//char* 的操作c++: char*; 对应 c#:StringBuilder;       <br />//c#中用指?在需要用指针的地方 ?unsafe       </div><div></div><div>//unsigned   char对应public   byte       </div><div></div><div></div><strong></strong><img src ="http://m.shnenglu.com/chinapeter2008/aggbug/214029.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/chinapeter2008/" target="_blank">canaan</a> 2016-07-22 14:36 <a href="http://m.shnenglu.com/chinapeter2008/archive/2016/07/22/214029.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>新手入门学习OpenCV2.4.13 载入修改保存囑փ (?http://m.shnenglu.com/chinapeter2008/archive/2016/07/12/213919.htmlcanaancanaanMon, 11 Jul 2016 23:40:00 GMThttp://m.shnenglu.com/chinapeter2008/archive/2016/07/12/213919.htmlhttp://m.shnenglu.com/chinapeter2008/comments/213919.htmlhttp://m.shnenglu.com/chinapeter2008/archive/2016/07/12/213919.html#Feedback0http://m.shnenglu.com/chinapeter2008/comments/commentRss/213919.htmlhttp://m.shnenglu.com/chinapeter2008/services/trackbacks/213919.html 提示Q?/strong>学习q课之前Q我们假设你已经知道如何用imread载入囑փq用imshow昄在窗口中?nbsp;如果q不知道那么先看目标Q?br />在这个教E中你将会学刎ͼ
1、?span style="color: #0000ff;">imread载入囑փ
2、?span style="color: #0000ff;">cvtColor图像冲BGR格式转换?span style="color: #0000ff;">Grayscale格式
3、?span style="color: #0000ff;">imwrite{换好的图像保存到盘?

源码Q?/strong>
 1 #include <cv.h>
 2 #include <highgui.h>
 3 
 4 using namespace cv;
 5 
 6 int main(int argc, char ** argv)
 7 {
 8     char* imageName = argv[1];
 9     Mat image;
10     image = imread(imageName, 1);
11 
12     if (2 != argc || !image.data)
13     {
14         printf("No image data\n");
15         return -1;
16     }
17 
18     Mat gray_image;
19     cvtColor(image, gray_image, CV_BGR2GRAY);
20 
21     imwrite("D:/images/Gray_Image.jpg", gray_image);
22 
23     namedWindow(imageName, CV_WINDOW_AUTOSIZE);
24     namedWindow("Gray image", CV_WINDOW_AUTOSIZE);
25 
26     imshow(imageName, image);
27     imshow("Gray image", gray_image);
28 
29     waitKey(0);                                      
30     return 0;
31 }

说明Q?/strong>
1、通过imread载入一?span style="color: #0000ff;">BGR囑փ?br />2、将囑փ?span style="color: #0000ff;">BGR转换?span style="color: #0000ff;">Grayscale格式Q?br />cvtColor( image, gray_image, CV_BGR2GRAY);
cvtColor参数Q?br />a、源囑փ(image)
b、目标图?gray_image)Q用于保存{换好的图像?br />c、指定{换类型?br />
3、保存图?br />imwrite("../../images/Gray_Image.jpg", gray_image);

4、最后通过H口昄囑փQ查看{换效果?br />
namedWindow(imageName, CV_WINDOW_AUTOSIZE);
 namedWindow("Gray image", CV_WINDOW_AUTOSIZE);
 imshow(imageName, image);
 imshow("Gray image", gray_image);

l果Q?/strong>


canaan 2016-07-12 07:40 发表评论
]]>
新手入门学习OpenCV2.4.13 载入q显C图?(?http://m.shnenglu.com/chinapeter2008/archive/2016/07/11/213910.htmlcanaancanaanSun, 10 Jul 2016 23:58:00 GMThttp://m.shnenglu.com/chinapeter2008/archive/2016/07/11/213910.htmlhttp://m.shnenglu.com/chinapeter2008/comments/213910.htmlhttp://m.shnenglu.com/chinapeter2008/archive/2016/07/11/213910.html#Feedback0http://m.shnenglu.com/chinapeter2008/comments/commentRss/213910.htmlhttp://m.shnenglu.com/chinapeter2008/services/trackbacks/213910.html目标
学习Q?、?span style="color: #0000ff;">imread载入囑փ?br />         2、?span style="color: #0000ff;">namedWindow创徏命名OpenCVH口?br />         3、?span style="color: #0000ff;">imshow在OpenCVH口中显C图像?

源码Q?br />
 1 #include <opencv2/core/core.hpp>
 2 #include <opencv2/highgui/highgui.hpp>
 3 #include <iostream>
 4 
 5 using namespace cv;
 6 using namespace std;
 7 
 8 int main(int argc, char ** argv)
 9 {
10     if (2 != argc)
11     {
12         cout << " Usage: display_image ImageToLoadAndDisplay" << endl;
13         return -1;
14     }
15 
16     Mat image;
17     image = imread(argv[1], CV_LOAD_IMAGE_COLOR);          // Read the file
18 
19     if (!image.data)                                                                 // Check for invalid input
20     {
21         cout << "Could not open or find the image" << std::endl;
22         return -1;
23     }
24 
25     namedWindow("Display window", WINDOW_AUTOSIZE);      // Create a window for display
26     imshow("Display window", image);                                     // Show our image inside it.
27 
28     waitKey(0);                                                                       // wait for a keystroke in the window
29     return 0;
30 }

说明Q?br />在用OpenCV 2 的功能之前,几乎L要包?
1?span style="color: #0000ff;">core 部分Q定义库的基本构建块
2?span style="color: #0000ff;">highgui模块Q包含输入输出操作函数?br />
 #include <opencv2/core/core.hpp>
 #include <opencv2/highgui/highgui.hpp>
 #include <iostream>

q需要include<iostream>q样更容易在console上输入。ؓ了避免数据结构和函数名称与其他库冲突QOpenCV有自q命名I间cv。当然ؓ了避免在每个关键字前都加cv::keywordQ可以在头部导入该命名空间?br />using namespace cv;
using namespace std;

需要在命o行输入有效的囑փ名称?br />
if (2 != argc)
{
      cout << " Usage: display_image ImageToLoadAndDisplay" << endl;
      return -1;
}
然后创徏Mat对象用于存储载入的图像数据?br />Mat image;

调用imread函数载入囑փQ图像名UCؓargv[1]指定的)。第二个参数指定囑փ格式?br />1、CV_LOAD_IMAGE_UNCHANGED (<0) loads the image as is(including the alpha channel if present)
2、CV_LOAD_IMAGE_GRAYSCALE (0) loads the image as an intensity one
3、CV_LOAD_IMAGE_COLOR (>0) loads the image in the BGR format

image = imread(argv[1], CV_LOAD_IMAGE_COLOR);      // Read the file
如果W二个参数未指定Q那么默认ؓCV_LOAD_IMAGE_COLOR

Z查图像是否正常蝲入,我们?span style="color: #0000ff;">namedWindow函数创徏一个OpenCVH口来显C图像。需要指定窗口名U和大小?br />W二个参数默认ؓQWINDOW_AUTOSIZE
1?span style="color: #0000ff;">WINDOW_AUTOSIZE    只支持QTq_?br />2?span style="color: #0000ff;">WINDOW_NORMAL       QT上支持窗口调整大?br />
最后在创徏的窗口中昄囑փ
imshow("Display window", image);   
                             
     

l果
~译执行E序?br />./DisplayImage d:\apple.jpg


canaan 2016-07-11 07:58 发表评论
]]>
来挑战一个排列组合的法?/title><link>http://m.shnenglu.com/chinapeter2008/archive/2012/11/13/195109.html</link><dc:creator>canaan</dc:creator><author>canaan</author><pubDate>Tue, 13 Nov 2012 03:57:00 GMT</pubDate><guid>http://m.shnenglu.com/chinapeter2008/archive/2012/11/13/195109.html</guid><wfw:comment>http://m.shnenglu.com/chinapeter2008/comments/195109.html</wfw:comment><comments>http://m.shnenglu.com/chinapeter2008/archive/2012/11/13/195109.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/chinapeter2008/comments/commentRss/195109.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/chinapeter2008/services/trackbacks/195109.html</trackback:ping><description><![CDATA[中国 中华 伟大 民国 民族Q?br />如何生成所有组合(例:中国Q中华民族,中华民国Q伟大中华,伟大中华民族Q?nbsp;?br />注意Q中华民国,民国中华 一个?img src ="http://m.shnenglu.com/chinapeter2008/aggbug/195109.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/chinapeter2008/" target="_blank">canaan</a> 2012-11-13 11:57 <a href="http://m.shnenglu.com/chinapeter2008/archive/2012/11/13/195109.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Winsock通过Sockaddr_indhttp://m.shnenglu.com/chinapeter2008/archive/2012/07/12/183013.htmlcanaancanaanThu, 12 Jul 2012 08:28:00 GMThttp://m.shnenglu.com/chinapeter2008/archive/2012/07/12/183013.htmlhttp://m.shnenglu.com/chinapeter2008/comments/183013.htmlhttp://m.shnenglu.com/chinapeter2008/archive/2012/07/12/183013.html#Feedback0http://m.shnenglu.com/chinapeter2008/comments/commentRss/183013.htmlhttp://m.shnenglu.com/chinapeter2008/services/trackbacks/183013.html 
  In the Internet address family, this structure is used by Windows Sockets to specify a local or remote endpoint address to which to connect a socket. This is the form of the sockaddr structure specific to the Internet address family and can be cast to sockaddr.
1 struct sockaddr_in
2 {
3     short sin_family;             //  (16?地址家族Q即指定地址格式Q,应ؓAF_INET。internetwork: UDP, TCP, etc.
4     unsigned short sin_port;  // (16?端口?/span>
5     struct in_addr sin_addr    // (32? IP地址
6     char sin_zero[8];            // (64? 填充Qɾl构体与SOCKADDR大小相同
7 }
8 
9 d为:128位(?6字节Q?/span>

 需要头文gQwinsock2.h


canaan 2012-07-12 16:28 发表评论
]]>
不用中间变量交换两个整型值的ҎQ不会溢出)http://m.shnenglu.com/chinapeter2008/archive/2012/05/29/176612.htmlcanaancanaanTue, 29 May 2012 05:58:00 GMThttp://m.shnenglu.com/chinapeter2008/archive/2012/05/29/176612.htmlhttp://m.shnenglu.com/chinapeter2008/comments/176612.htmlhttp://m.shnenglu.com/chinapeter2008/archive/2012/05/29/176612.html#Feedback6http://m.shnenglu.com/chinapeter2008/comments/commentRss/176612.htmlhttp://m.shnenglu.com/chinapeter2008/services/trackbacks/176612.html1 void inplace_swap(int *x, int *y)
2 {
3     *= *^ *y;
4     *= *^ *y;
5     *= *^ *y;
6 }

canaan 2012-05-29 13:58 发表评论
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              ձvaҹӰԺ| þþwwwѾƷ| þavһ| þðwwwþ| þþƷѿ| av| ޸| ޹Ʒva߿˶| ŷɫƷ| 99Ʒþ| ҹƷþþþþþ˵| ۺ| ˾þ99þþƷ| ŷƷŷһٸ| ƷԲĸav| ŷպƷ| ޾| ŷһŷһ߲| þۺɫۺ88| ѹۿ| þþƷ| ŷպһƬ߹ۿ| ҹƷһƵ | ޹| һ߹ۿ| þþwwwѾƷ| ŷպһ| ߲aԴ| ŮëƬڵ| ŷvһƵ| һþþ| ŷպһ| ׾Ʒһ| 99ƵƷ| ˾ҹƷ| ŷþþþһ| | ˾þ| þùƷһ| ޾þһ| ˳ɾƷŷƷ| ۺɫһ| ŷպƷۺ߹ۿ| ޹˸徫Ʒ| þav| Ʒ| ŷƵѹۿ| һƵ߹ۿ| ŷպ| һþþƷ| aŹ˾Ʒ| ޾þþþþ| ŷպһ| ޾Ʒ| ŷŷ| ˳ɾþ| ޼| ŷ˾Ʒ| ޾Ʒþ| ޻ɫѵӰ| ŷպ| պһƷƵ߹ۿ| ޹Ʒһ| þþþù| ŷһ| þþþþ| þþþ| ձ| ޾ƷŮ߹ۿ| ŷþþƷҹ| 99ƷƵѹۿһ| ޹˾þۺһ| ŷ96حŷ| ҹƷ| 99鶹Ʒ| ƷëƬaһ| Ů͵ͼƬ| һ| ѲƵ| ˳ɸ| Ʒþþþþþõһ| þavַ| þŷ| һþþƷɫa| ƵƷ| ɫһ| ޵һҳ| Ʒþþþþav | ŷۺһ| ŷһƵ| Ůav߲| պƵһ߲| Ʒh߹ۿ| þùŷ| ŷƷž| þùƷһ| þľþĻ| ŷһԭ| ŷ| ޹ۺƵ߹ۿ| aɫŷ| һav| ޵һĻ߹ۿ| Ʒ˳߹ۿ | ޹porn| Ʒۺɫ| þӰԺ| ƷǿˬˬˬƵ | Բ͵ľƷƵ͵| ŷvavaۺ| ŷպһƷһ| þþþþþù| ŷƵվ| þһƷ| ŷ| ŷרר| ŷպһƵ| Ļպŷ| Ʒһѹۿ| ŷƵ| ҹľƷ| ŷһƬ100| ƷƵһ| ޴Ƭѿ| պ| | ÿո| ŷ龫Ʒþþþþӡ| ŷӰԺƷһ| ŷպһŷ| ŷ˾Ʒ߹ۿ| ۺ| һ߹ۿ| ˳߲| ѹۿһ| ۺ| һӰ| ŷպձ| ޹ƷԲavϼ| һѹۿ| avԾþþþa| þav| 鶡ۺ| þһ| ŷxxx| ޵һ߹ۿ| þƵֻоƷ| þۺϼ| ޹ר| ŷ߲| ޹Ƭɫ| | ƷպƷŷƷ| һ˾Ʒ | ˾Ƶһ| ѿav| Ƶ| ŷպۺƵ| Ůav| ŷպƷһ| ŷһ| þó˾ƷƵ| ѾþþƷƵ| ҹҹavһ| ŷԴսþþþþþ| һҹ| ѿavվ| ޼һҳ| ŷɫƵһ| ƷvպƷvŷƷվ| þ޾Ʒһ| ޵һƷӰ| Ʒ߳Ƶ| ŷһƬ| ŷ߹ۿ| һþۺ³³| Ʒŷһˮ| ŷվ| ѳavӰ| þüۺ| ޾ƷƵ| Ʒҹ߹ۿ| 鶹ƷƵ| ŷһ| ŷƷþ| 㽶þù| պƵ| ߹ۿƷһ| ŷŮƵ| þavһ| ŮëƬ| ŷƷva߹ۿ| ҹþø| պŷһ| ˾þݺ| ŷƵƷ߹ۿ| þŮվƵ| 99һ| ŷʿ18xxxxhd| þþþùƷһ|